projects
/
wxWidgets.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
typo fix
[wxWidgets.git]
/
src
/
common
/
dynlib.cpp
diff --git
a/src/common/dynlib.cpp
b/src/common/dynlib.cpp
index abf8d206a83d7b559bd433f4a213a1edb283ddcd..90945e8caed7fbf106088b6577e73064cec2245f 100644
(file)
--- a/
src/common/dynlib.cpp
+++ b/
src/common/dynlib.cpp
@@
-310,12
+310,8
@@
void *wxDllLoader::GetSymbol(wxDllType dllHandle, const wxString &name, bool *su
CFragSymbolClass symClass;
Str255 symName;
CFragSymbolClass symClass;
Str255 symName;
-#if TARGET_CARBON
- c2pstrcpy( (StringPtr) symName, name );
-#else
- strcpy( (char *) symName, name );
- c2pstr( (char *) symName );
-#endif
+ wxMacStringToPascal( name.c_str() , symName ) ;
+
if( FindSymbol( ((CFragConnectionID)dllHandle), symName, &symAddress, &symClass ) == noErr )
symbol = (void *)symAddress;
if( FindSymbol( ((CFragConnectionID)dllHandle), symName, &symAddress, &symClass ) == noErr )
symbol = (void *)symAddress;
@@
-484,15
+480,19
@@
int dlclose(void *handle)
return 0;
}
return 0;
}
-void *dlsym(void *
WXUNUSED(handle)
, const char *symbol)
+void *dlsym(void *
handle
, const char *symbol)
{
void *addr;
{
void *addr;
+
+ NSSymbol nsSymbol = NSLookupSymbolInModule( handle , symbol ) ;
- if (NSIsSymbolNameDefined(symbol)) {
- addr = NSAddressOfSymbol(NSLookupAndBindSymbol(symbol));
+ if ( nsSymbol)
+ {
+ addr = NSAddressOfSymbol(nsSymbol);
}
}
- else {
- addr = NULL;
+ else
+ {
+ addr = NULL;
}
return addr;
}
}
return addr;
}