From: Christian Heimes Date: Thu, 11 Jul 2013 09:22:21 +0000 (+0200) Subject: Issue #18426: Fix NULL pointer dereference in C extension import when X-Git-Tag: v3.4.0a1~265^2 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=848ee099f5b36650fa7c23ec91110f319e40fd13;p=thirdparty%2FPython%2Fcpython.git Issue #18426: Fix NULL pointer dereference in C extension import when PyModule_GetDef() returns an error. --- diff --git a/Misc/NEWS b/Misc/NEWS index 63d49693d7d7..4d55853af7f9 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -12,6 +12,9 @@ What's New in Python 3.3.3 release candidate 1? Core and Builtins ----------------- +- Issue #18426: Fix NULL pointer dereference in C extension import when + PyModule_GetDef() returns an error. + - Issue #18328: Reorder ops in PyThreadState_Delete*() functions. Now the tstate is first removed from TLS and then deallocated. diff --git a/Python/importdl.c b/Python/importdl.c index 942e4b8d28f6..e393de153bae 100644 --- a/Python/importdl.c +++ b/Python/importdl.c @@ -97,6 +97,8 @@ _PyImport_LoadDynamicModule(PyObject *name, PyObject *path, FILE *fp) /* Remember pointer to module init function. */ def = PyModule_GetDef(m); + if (def == NULL) + goto error; def->m_base.m_init = p; /* Remember the filename as the __file__ attribute */