Changed GetProcAddress16 and 16-bit resource functions to take normal
pointers instead of SEGPTRs.
Removed WIN16_GetTempDrive.
diff --git a/loader/module.c b/loader/module.c
index d2c0fb8..af249b6 100644
--- a/loader/module.c
+++ b/loader/module.c
@@ -1633,9 +1633,6 @@
*/
FARPROC16 WINAPI WIN32_GetProcAddress16( HMODULE hModule, LPCSTR name )
{
- WORD ordinal;
- FARPROC16 ret;
-
if (!hModule) {
WARN("hModule may not be 0!\n");
return (FARPROC16)0;
@@ -1645,24 +1642,13 @@
WARN("hModule is Win32 handle (%08x)\n", hModule );
return (FARPROC16)0;
}
- hModule = GetExePtr( hModule );
- if (HIWORD(name)) {
- ordinal = NE_GetOrdinal( hModule, name );
- TRACE("%04x '%s'\n", hModule, name );
- } else {
- ordinal = LOWORD(name);
- TRACE("%04x %04x\n", hModule, ordinal );
- }
- if (!ordinal) return (FARPROC16)0;
- ret = NE_GetEntryPoint( hModule, ordinal );
- TRACE("returning %08x\n",(UINT)ret);
- return ret;
+ return GetProcAddress16( hModule, name );
}
/***********************************************************************
* GetProcAddress16 (KERNEL.50)
*/
-FARPROC16 WINAPI GetProcAddress16( HMODULE16 hModule, SEGPTR name )
+FARPROC16 WINAPI GetProcAddress16( HMODULE16 hModule, LPCSTR name )
{
WORD ordinal;
FARPROC16 ret;
@@ -1672,8 +1658,8 @@
if (HIWORD(name) != 0)
{
- ordinal = NE_GetOrdinal( hModule, (LPSTR)PTR_SEG_TO_LIN(name) );
- TRACE("%04x '%s'\n", hModule, (LPSTR)PTR_SEG_TO_LIN(name) );
+ ordinal = NE_GetOrdinal( hModule, name );
+ TRACE("%04x '%s'\n", hModule, name );
}
else
{
diff --git a/loader/resource.c b/loader/resource.c
index cec6f6c..20fb275 100644
--- a/loader/resource.c
+++ b/loader/resource.c
@@ -320,12 +320,9 @@
/**********************************************************************
* FindResource16 (KERNEL.60)
*/
-HRSRC16 WINAPI FindResource16( HMODULE16 hModule, SEGPTR name, SEGPTR type )
+HRSRC16 WINAPI FindResource16( HMODULE16 hModule, LPCSTR name, LPCSTR type )
{
- LPCSTR nameStr = HIWORD(name)? PTR_SEG_TO_LIN(name) : (LPCSTR)name;
- LPCSTR typeStr = HIWORD(type)? PTR_SEG_TO_LIN(type) : (LPCSTR)type;
-
- return RES_FindResource( hModule, typeStr, nameStr,
+ return RES_FindResource( hModule, type, name,
MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUTRAL), FALSE, TRUE );
}