X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6057972be41063d3c6038f09605eec76931a847a..30a72e62977e4c532ae2f265db72535a5cccbbab:/src/common/dynlib.cpp?ds=sidebyside diff --git a/src/common/dynlib.cpp b/src/common/dynlib.cpp index 0b479642b6..5c93399eee 100644 --- a/src/common/dynlib.cpp +++ b/src/common/dynlib.cpp @@ -98,6 +98,8 @@ const char *dlerror(void); # endif // Win32/16 # define wxDllGetSymbol(handle, name) ::GetProcAddress(handle, name) # define wxDllClose ::FreeLibrary +#elif defined(__WXMAC__) +# define wxDllClose(handle) CloseConnection(&handle) #else # error "Don't know how to load shared libraries on this platform." #endif // OS @@ -235,13 +237,13 @@ wxDllLoader::LoadLibrary(const wxString & libname, bool *success) Ptr myMainAddr ; Str255 myErrName ; - wxMacPathToFSSpec( libname , &myFSSpec ) ; + wxMacFilename2FSSpec( libname , &myFSSpec ) ; if (GetDiskFragment( &myFSSpec , 0 , kCFragGoesToEOF , "\p" , kPrivateCFragCopy , &handle , &myMainAddr , myErrName ) != noErr ) { p2cstr( myErrName ) ; - wxASSERT_MSG( 1 , (char*)myErrName ) ; - return NULL ; + wxLogSysError( _("Failed to load shared library '%s' Error '%s'") , libname.c_str() , (char*)myErrName ) ; + handle = NULL ; } #elif defined(__WXPM__) || defined(__EMX__) char zError[256] = ""; @@ -363,7 +365,7 @@ wxLibrary *wxLibraries::LoadLibrary(const wxString& name) if (node != NULL) return ((wxLibrary *)node->Data()); #else // !OS/2 - if ( (node = m_loaded.Find(name.GetData())) ) + if ( (node = m_loaded.Find(name.GetData())) != NULL) return ((wxLibrary *)node->Data()); #endif // If DLL shares data, this is necessary.