#if wxUSE_DYNLIB_CLASS
#if defined(__WINDOWS__)
- #include "wx/msw/private.h"
+ #include "wx/msw/wrapwin.h"
#endif
#include "wx/dynlib.h"
unsigned int index;
static char *OFIErrorStrings[] =
{
- "%s(%d): Object Image Load Failure\n",
- "%s(%d): Object Image Load Success\n",
- "%s(%d): Not an recognisable object file\n",
- "%s(%d): No valid architecture\n",
- "%s(%d): Object image has an invalid format\n",
- "%s(%d): Invalid access (permissions?)\n",
- "%s(%d): Unknown error code from NSCreateObjectFileImageFromFile\n",
+ "%s(%d): Object Image Load Failure\n",
+ "%s(%d): Object Image Load Success\n",
+ "%s(%d): Not an recognisable object file\n",
+ "%s(%d): No valid architecture\n",
+ "%s(%d): Object image has an invalid format\n",
+ "%s(%d): Invalid access (permissions?)\n",
+ "%s(%d): Unknown error code from NSCreateObjectFileImageFromFile\n",
};
#define NUM_OFI_ERRORS (sizeof(OFIErrorStrings) / sizeof(OFIErrorStrings[0]))
dyld_result = NSCreateObjectFileImageFromFile(path, &ofile);
if (dyld_result != NSObjectFileImageSuccess)
{
- TranslateError(path, dyld_result);
+ TranslateError(path, dyld_result);
}
else
{
- // NSLinkModule will cause the run to abort on any link error's
- // not very friendly but the error recovery functionality is limited.
- handle = NSLinkModule(ofile, path, NSLINKMODULE_OPTION_BINDNOW);
+ // NSLinkModule will cause the run to abort on any link error's
+ // not very friendly but the error recovery functionality is limited.
+ handle = NSLinkModule(ofile, path, NSLINKMODULE_OPTION_BINDNOW);
}
return handle;
void *dlsym(void *handle, const char *symbol)
{
void *addr;
-
+
NSSymbol nsSymbol = NSLookupSymbolInModule( handle , symbol ) ;
- if ( nsSymbol)
+ if ( nsSymbol)
{
- addr = NSAddressOfSymbol(nsSymbol);
+ addr = NSAddressOfSymbol(nsSymbol);
}
- else
+ else
{
- addr = NULL;
+ addr = NULL;
}
return addr;
}
return symbol;
}
-
+
/*static*/
wxString
{
wxAppTraits *traits = wxAppConsole::GetInstance() ?
wxAppConsole::GetInstance()->GetTraits() : NULL;
- wxASSERT_MSG( traits,
+ wxASSERT_MSG( traits,
_("can't query for GUI plugins name in console applications") );
suffix = traits->GetToolkitInfo().shortName;
}
return CanonicalizeName(name + suffix, wxDL_MODULE);
}
-
+
/*static*/
wxString wxDynamicLibrary::GetPluginsDirectory()
{
#ifdef __UNIX__
wxString format = wxGetInstallPrefix();
+ wxString dir;
format << wxFILE_SEP_PATH
<< wxT("lib") << wxFILE_SEP_PATH
<< wxT("wx") << wxFILE_SEP_PATH
+#if (wxMINOR_VERSION % 2) == 0
<< wxT("%i.%i");
- wxString dir;
dir.Printf(format.c_str(), wxMAJOR_VERSION, wxMINOR_VERSION);
- return dir;
#else
+ << wxT("%i.%i.%i");
+ dir.Printf(format.c_str(),
+ wxMAJOR_VERSION, wxMINOR_VERSION, wxRELEASE_NUMBER);
+#endif
+ return dir;
+
+#else // ! __UNIX__
return wxEmptyString;
#endif
}