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: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=848ee099f5b36650fa7c23ec91110f319e40fd13;p=python 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 63d49693d7..4d55853af7 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 942e4b8d28..e393de153b 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 */