]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[Backport r51231 | neal.norwitz]
authorAndrew M. Kuchling <amk@amk.ca>
Tue, 3 Oct 2006 19:08:48 +0000 (19:08 +0000)
committerAndrew M. Kuchling <amk@amk.ca>
Tue, 3 Oct 2006 19:08:48 +0000 (19:08 +0000)
PyModule_GetDict() can fail, produce fatal errors if this happens on startup.

Klocwork #298-299.

Python/pythonrun.c

index e093dc52981a3e129aad869e01c25867643be11a..9ef1fea41f69424594a94c77a4d92b2c1bbebfe5 100644 (file)
@@ -185,12 +185,16 @@ Py_InitializeEx(int install_sigs)
        if (bimod == NULL)
                Py_FatalError("Py_Initialize: can't initialize __builtin__");
        interp->builtins = PyModule_GetDict(bimod);
+       if (interp->builtins == NULL)
+               Py_FatalError("Py_Initialize: can't initialize builtins dict");
        Py_INCREF(interp->builtins);
 
        sysmod = _PySys_Init();
        if (sysmod == NULL)
                Py_FatalError("Py_Initialize: can't initialize sys");
        interp->sysdict = PyModule_GetDict(sysmod);
+       if (interp->sysdict == NULL)
+               Py_FatalError("Py_Initialize: can't initialize sys dict");
        Py_INCREF(interp->sysdict);
        _PyImport_FixupExtension("sys", "sys");
        PySys_SetPath(Py_GetPath());