Author: mturk
Date: Sat Apr 18 06:35:50 2009
New Revision: 766246
URL: http://svn.apache.org/viewvc?rev=766246&view=rev
Log:
Remove V2P macro.
Modified:
commons/sandbox/runtime/trunk/src/main/native/os/win32/main.c
Modified: commons/sandbox/runtime/trunk/src/main/native/os/win32/main.c
URL:
http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/os/win32/main.c?rev=766246&r1=766245&r2=766246&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/os/win32/main.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/os/win32/main.c Sat Apr 18
06:35:50 2009
@@ -121,6 +121,7 @@
FARPROC acr_load_dll_func(acr_dlltoken_e fnLib, const char* fnName, int
ordinal)
{
+ FARPROC fp = NULL;
if (!late_dll_handles[fnLib]) {
/* First see if the .dll is already loaded in the process */
late_dll_handles[fnLib] = GetModuleHandleA(late_dll_names[fnLib]);
@@ -134,10 +135,13 @@
return NULL;
}
if (ordinal)
- return GetProcAddress(late_dll_handles[fnLib],
- V2P(const char *, ordinal));
- else
- return GetProcAddress(late_dll_handles[fnLib], fnName);
+ fp = GetProcAddress(late_dll_handles[fnLib],
+ (const char *)0 + (((acr_ptr_t)ordinal) & 0xFFFF));
+ if (fp == NULL && fnName) {
+ /* Try function name if ordinal failed */
+ fp = GetProcAddress(late_dll_handles[fnLib], fnName);
+ }
+ return fp;
}
static DWORD preload_late_dlls()