Alexandre Julliard : krnl386: GetCodeHandle returns a DWORD.

Alexandre Julliard julliard at winehq.org
Fri Feb 23 15:10:23 CST 2018


Module: wine
Branch: master
Commit: 3b6af707340e7ca53387215c3550dc1b4e0672c1
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=3b6af707340e7ca53387215c3550dc1b4e0672c1

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Fri Feb 23 19:23:44 2018 +0100

krnl386: GetCodeHandle returns a DWORD.

Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/krnl386.exe16/krnl386.exe16.spec | 2 +-
 dlls/krnl386.exe16/task.c             | 4 ++--
 include/wine/winbase16.h              | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/krnl386.exe16/krnl386.exe16.spec b/dlls/krnl386.exe16/krnl386.exe16.spec
index da92569..f20d69e 100644
--- a/dlls/krnl386.exe16/krnl386.exe16.spec
+++ b/dlls/krnl386.exe16/krnl386.exe16.spec
@@ -94,7 +94,7 @@
 90  pascal -ret16 lstrlen(str) lstrlen16
 91  pascal -register InitTask() InitTask16
 92  pascal   GetTempDrive(word) GetTempDrive
-93  pascal -ret16 GetCodeHandle(segptr) GetCodeHandle16
+93  pascal GetCodeHandle(segptr) GetCodeHandle16
 94  pascal -ret16 DefineHandleTable(word) DefineHandleTable16
 95  pascal -ret16 LoadLibrary(str) LoadLibrary16
 96  pascal -ret16 FreeLibrary(word) FreeLibrary16
diff --git a/dlls/krnl386.exe16/task.c b/dlls/krnl386.exe16/task.c
index 30aa866..84d4bf3 100644
--- a/dlls/krnl386.exe16/task.c
+++ b/dlls/krnl386.exe16/task.c
@@ -984,14 +984,14 @@ static BOOL TASK_GetCodeSegment( FARPROC16 proc, NE_MODULE **ppModule,
 /**********************************************************************
  *	    GetCodeHandle    (KERNEL.93)
  */
-HANDLE16 WINAPI GetCodeHandle16( FARPROC16 proc )
+DWORD WINAPI GetCodeHandle16( FARPROC16 proc )
 {
     SEGTABLEENTRY *pSeg;
 
     if ( !TASK_GetCodeSegment( proc, NULL, &pSeg, NULL ) )
         return 0;
 
-    return pSeg->hSeg;
+    return MAKELONG( pSeg->hSeg, GlobalHandleToSel16(pSeg->hSeg) );
 }
 
 /**********************************************************************
diff --git a/include/wine/winbase16.h b/include/wine/winbase16.h
index f2f32a2..16c6324 100644
--- a/include/wine/winbase16.h
+++ b/include/wine/winbase16.h
@@ -357,7 +357,7 @@ VOID        WINAPI FarSetOwner16(HGLOBAL16,HANDLE16);
 FARPROC16   WINAPI FileCDR16(FARPROC16);
 WORD        WINAPI FreeSelector16(WORD);
 HANDLE16    WINAPI GetAtomHandle16(ATOM);
-HANDLE16    WINAPI GetCodeHandle16(FARPROC16);
+DWORD       WINAPI GetCodeHandle16(FARPROC16);
 BOOL16      WINAPI GetCodeInfo16(FARPROC16,SEGINFO*);
 DWORD       WINAPI GetCurrentPDB16(void);
 HTASK16     WINAPI GetCurrentTask(void);




More information about the wine-cvs mailing list