Christian Heimes <[EMAIL PROTECTED]> added the comment:

The FileIO construct segfaults because PyArg_ParseTupleAndKeywords()
sets name to an invalid but non NULL value. PyMem_Free() tries to
deallocate name but fails.

Suggestion: Either appy this patch or change
PyArg_ParseTupleAndKeyword()'s behavior for 'e'.

Index: Modules/_fileio.c
===================================================================
--- Modules/_fileio.c   (Revision 66010)
+++ Modules/_fileio.c   (Arbeitskopie)
@@ -174,8 +174,10 @@
                if (!PyArg_ParseTupleAndKeywords(args, kwds, "et|si:fileio",
                                                 kwlist,
                                                
Py_FileSystemDefaultEncoding,
-                                                &name, &mode, &closefd))
+                                                &name, &mode, &closefd)) {
+                       name = NULL;
                        goto error;
+                       }
            }
        }

----------
nosy: +christian.heimes

_______________________________________
Python tracker <[EMAIL PROTECTED]>
<http://bugs.python.org/issue3662>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to