This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: winreg can segfault
Type: Stage:
Components: Windows Versions: Python 2.3
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: gvanrossum Nosy List: gvanrossum
Priority: high Keywords:

Created on 2003-11-29 06:57 by gvanrossum, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Messages (2)
msg19196 - (view) Author: Guido van Rossum (gvanrossum) * (Python committer) Date: 2003-11-29 06:57
(I need this fixed before 2.3.3 since it is critical to
something at work. I therefore promise to do it myself.)

I tracked down a segfault on Windows (XP) in some
windows registry traversal code I wrote.  It uses
_winreg.c, the crash is in PyEnumValue. I I think the
cause is that the requested value was very large
(several 100 KB) and the code does an alloca() for that
much.  I'm guessing this overflows the stack. The code
needs to be rewritten to avoid alloca() I fear...
msg19197 - (view) Author: Guido van Rossum (gvanrossum) * (Python committer) Date: 2003-11-30 22:13
Logged In: YES 
user_id=6380

I've fixed this in 2.4 and 2.3. (I still need to do a test
with a truly large registry value, but the only machine
where I can reproduce this is not in my possession, so it
may take a while).
History
Date User Action Args
2022-04-11 14:56:01adminsetgithub: 39627
2003-11-29 06:57:33gvanrossumcreate