kernel32: Fix some compilation warnings in 64-bit mode

Dmitry Timoshkov dmitry at codeweavers.com
Wed May 30 05:31:52 CDT 2007


Hello,

Changelog:
    kernel32: Fix some compilation warnings in 64-bit mode.

---
 dlls/kernel32/global16.c         |    4 ++--
 dlls/kernel32/heap.c             |    4 ++++
 dlls/kernel32/kernel16_private.h |    2 +-
 dlls/kernel32/selector.c         |    2 +-
 4 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/dlls/kernel32/global16.c b/dlls/kernel32/global16.c
index 2031525..b18fb8e 100644
--- a/dlls/kernel32/global16.c
+++ b/dlls/kernel32/global16.c
@@ -207,7 +207,7 @@ BOOL16 GLOBAL_MoveBlock( HGLOBAL16 handle, const void *ptr, DWORD size )
     if (pArena->selCount != 1)
         return FALSE;
 
-    pArena->base = (DWORD)ptr;
+    pArena->base = (DWORD_PTR)ptr;
     pArena->size = size;
     SELECTOR_ReallocBlock( sel, ptr, size );
     return TRUE;
@@ -428,7 +428,7 @@ HGLOBAL16 WINAPI GlobalReAlloc16(
          As we may have used HEAP_REALLOC_IN_PLACE_ONLY, areas may overlap*/
 
     if (pNewArena != pArena) memmove( pNewArena, pArena, sizeof(GLOBALARENA) );
-    pNewArena->base = (DWORD)ptr;
+    pNewArena->base = (DWORD_PTR)ptr;
     pNewArena->size = GetSelectorLimit16(sel) + 1;
     pNewArena->selCount = selcount;
     pNewArena->handle = (pNewArena->flags & GA_MOVEABLE) ? sel - 1 : sel;
diff --git a/dlls/kernel32/heap.c b/dlls/kernel32/heap.c
index 98552ca..03c0769 100644
--- a/dlls/kernel32/heap.c
+++ b/dlls/kernel32/heap.c
@@ -1109,6 +1109,8 @@ BOOL WINAPI LocalUnlock(
 }
 
 
+#ifdef __i386__
+
 /**********************************************************************
  * 		AllocMappedBuffer	(KERNEL32.38)
  *
@@ -1182,6 +1184,8 @@ void WINAPI __regs_FreeMappedBuffer(
 DEFINE_REGS_ENTRYPOINT( FreeMappedBuffer, 0, 0 )
 #endif
 
+#endif /* __i386__ */
+
 /***********************************************************************
  *           GlobalMemoryStatusEx   (KERNEL32.@)
  * A version of GlobalMemoryStatus that can deal with memory over 4GB
diff --git a/dlls/kernel32/kernel16_private.h b/dlls/kernel32/kernel16_private.h
index c153d81..0c59bbd 100644
--- a/dlls/kernel32/kernel16_private.h
+++ b/dlls/kernel32/kernel16_private.h
@@ -168,7 +168,7 @@ extern THHOOK *pThhook;
     (((offset)+(size) <= pModule->mapping_size) ? \
      (memcpy( buffer, (const char *)pModule->mapping + (offset), (size) ), TRUE) : FALSE)
 
-#define CURRENT_STACK16 ((STACK16FRAME*)MapSL((SEGPTR)NtCurrentTeb()->WOW32Reserved))
+#define CURRENT_STACK16 ((STACK16FRAME*)MapSL(PtrToUlong(NtCurrentTeb()->WOW32Reserved)))
 #define CURRENT_DS      (CURRENT_STACK16->ds)
 
 /* push bytes on the 16-bit stack of a thread; return a segptr to the first pushed byte */
diff --git a/dlls/kernel32/selector.c b/dlls/kernel32/selector.c
index db3a47e..c8841b1 100644
--- a/dlls/kernel32/selector.c
+++ b/dlls/kernel32/selector.c
@@ -482,7 +482,7 @@ SEGPTR WINAPI MapLS( LPCVOID ptr )
 
     if (!HIWORD(ptr)) return (SEGPTR)LOWORD(ptr);
 
-    base = (const char *)ptr - ((unsigned int)ptr & 0x7fff);
+    base = (const char *)ptr - ((ULONG_PTR)ptr & 0x7fff);
     HeapLock( GetProcessHeap() );
     for (entry = first_entry; entry; entry = entry->next)
     {
-- 
1.5.1.6






More information about the wine-patches mailing list