diff options
author | Jack Jansen <jack.jansen@cwi.nl> | 2004-07-15 22:28:48 +0000 |
---|---|---|
committer | Jack Jansen <jack.jansen@cwi.nl> | 2004-07-15 22:28:48 +0000 |
commit | 788bce95e11d976907c1af660d1de1ff85c6bda0 (patch) | |
tree | adcbad91a1eec29e6bfcbb9a9ee6ba1429a044cc /Python/dynload_next.c | |
parent | 5c5bc14115cc323a27d2fa5d35a5b77f0c4c32e9 (diff) | |
download | cpython-788bce95e11d976907c1af660d1de1ff85c6bda0.tar.gz |
Fix for 838140: don't call NSUnlinkModule when we fail to find our
expected entrypoint. The unlinking will crash the application if the
module contained ObjC code. The price of this is small: a little wasted
memory, and only in a case than isn't expected to occur often.
Diffstat (limited to 'Python/dynload_next.c')
-rw-r--r-- | Python/dynload_next.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Python/dynload_next.c b/Python/dynload_next.c index cf42cb7151..27df35696c 100644 --- a/Python/dynload_next.c +++ b/Python/dynload_next.c @@ -92,7 +92,7 @@ dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname, #ifdef USE_DYLD_GLOBAL_NAMESPACE if (!NSIsSymbolNameDefined(funcname)) { /* UnlinkModule() isn't implemented in current versions, but calling it does no harm */ - NSUnLinkModule(newModule, FALSE); + /* NSUnLinkModule(newModule, FALSE); removed: causes problems for ObjC code */ PyErr_Format(PyExc_ImportError, "Loaded module does not contain symbol %.200s", funcname); @@ -102,7 +102,7 @@ dl_funcptr _PyImport_GetDynLoadFunc(const char *fqname, const char *shortname, #else theSym = NSLookupSymbolInModule(newModule, funcname); if ( theSym == NULL ) { - NSUnLinkModule(newModule, FALSE); + /* NSUnLinkModule(newModule, FALSE); removed: causes problems for ObjC code */ PyErr_Format(PyExc_ImportError, "Loaded module does not contain symbol %.200s", funcname); |