From 8f565bdc74d7d2b57c5de0f9079abf21e2c78327 Mon Sep 17 00:00:00 2001 From: Bill Hoffman Date: Tue, 17 Feb 2004 08:35:23 -0500 Subject: [PATCH] BUG: don't crash when loading a module that does not exist --- Source/cmDynamicLoader.cxx | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/Source/cmDynamicLoader.cxx b/Source/cmDynamicLoader.cxx index 14568bf1b..e6c71b25c 100644 --- a/Source/cmDynamicLoader.cxx +++ b/Source/cmDynamicLoader.cxx @@ -162,12 +162,19 @@ cmLibHandle cmDynamicLoader::OpenLibrary(const char* libname ) } NSObjectFileImageReturnCode rc; - NSObjectFileImage image; + NSObjectFileImage image = 0; rc = NSCreateObjectFileImageFromFile(libname, &image); + if(!image) + { + return 0; + } lh = NSLinkModule(image, libname, TRUE); - cmDynamicLoaderCache::GetInstance()->CacheFile(libname, lh); - return lh; + if(lh) + { + cmDynamicLoaderCache::GetInstance()->CacheFile(libname, lh); + } + return lh; } int cmDynamicLoader::CloseLibrary(cmLibHandle lib) @@ -334,6 +341,6 @@ const char* cmDynamicLoader::LibPrefix() const char* cmDynamicLoader::LibExtension() { - return CMAKE_SHARED_LIBRARY_SUFFIX; + return CMAKE_SHARED_MODULE_SUFFIX; }