From 67715f042096b4f77e359823f2c8d330f2b965b9 Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Wed, 9 Nov 2005 06:59:35 +0000 Subject: - SF Bug #1350188, "setdlopenflags" leads to crash upon "import" It was possible dlerror() returns a NULL pointer, use a default error message in this case. --- Misc/NEWS | 4 ++++ Python/dynload_shlib.c | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/Misc/NEWS b/Misc/NEWS index 5191c25..b257e0e 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -12,6 +12,10 @@ What's New in Python 2.5 alpha 1? Core and builtins ----------------- +- SF Bug #1350188, "setdlopenflags" leads to crash upon "import" + It was possible dlerror() returns a NULL pointer, use a default error + message in this case. + - Replaced most Unicode charmap codecs with new ones using the new Unicode translate string feature in the builtin charmap codec; the codecs were created from the mapping tables available diff --git a/Python/dynload_shlib.c b/Python/dynload_shlib.c index 2b5a11a..960e5c0 100644 --- a/Python/dynload_shlib.c +++ b/Python/dynload_shlib.c @@ -130,7 +130,10 @@ dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname, handle = dlopen(pathname, dlopenflags); if (handle == NULL) { - PyErr_SetString(PyExc_ImportError, dlerror()); + char *error = dlerror(); + if (error == NULL) + error = "unknown dlopen() error"; + PyErr_SetString(PyExc_ImportError, error); return NULL; } if (fp != NULL && nhandles < 128) -- cgit v0.12