]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Moved the initalization of the exception before the initialization of sys.
authorChristian Heimes <christian@cheimes.de>
Wed, 14 Nov 2007 00:16:07 +0000 (00:16 +0000)
committerChristian Heimes <christian@cheimes.de>
Wed, 14 Nov 2007 00:16:07 +0000 (00:16 +0000)
On Windows _PySys_Init() could raise an uninitialized exception which leads to a seg fault.

Python/pythonrun.c

index 044c4a90d9b294916c021aa289eb4ab4d5723d8c..763f9059bb527d33877d440c42e91280e182b579 100644 (file)
@@ -217,6 +217,9 @@ Py_InitializeEx(int install_sigs)
                Py_FatalError("Py_Initialize: can't initialize builtins dict");
        Py_INCREF(interp->builtins);
 
+       /* initialize builtin exceptions */
+       _PyExc_Init();
+
        sysmod = _PySys_Init();
        if (sysmod == NULL)
                Py_FatalError("Py_Initialize: can't initialize sys");
@@ -239,9 +242,6 @@ Py_InitializeEx(int install_sigs)
 
        _PyImport_Init();
 
-       /* initialize builtin exceptions */
-       _PyExc_Init();
-
        /* phase 2 of builtins */
        _PyImport_FixupExtension("__builtin__", "__builtin__");