ntoskrnl: Use SIZE_T to store 64-bit offset to USER_SHARED_DATA page.

Sebastian Lackner sebastian at fds-team.de
Tue Jun 23 18:54:40 CDT 2015


---
 dlls/ntoskrnl.exe/instr.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/ntoskrnl.exe/instr.c b/dlls/ntoskrnl.exe/instr.c
index 1306d5f..85b872e 100644
--- a/dlls/ntoskrnl.exe/instr.c
+++ b/dlls/ntoskrnl.exe/instr.c
@@ -684,7 +684,7 @@ static DWORD emulate_instruction( EXCEPTION_RECORD *rec, CONTEXT *context )
             BYTE *data = INSTR_GetOperandAddr( context, instr + 2, long_addr,
                                                rex, segprefix, &len );
             unsigned int data_size = (instr[1] == 0xb7) ? 2 : 1;
-            unsigned int offset = data - user_shared_data;
+            SIZE_T offset = data - user_shared_data;
 
             if (offset <= sizeof(KSHARED_USER_DATA) - data_size)
             {
@@ -705,7 +705,7 @@ static DWORD emulate_instruction( EXCEPTION_RECORD *rec, CONTEXT *context )
         BYTE *data = INSTR_GetOperandAddr( context, instr + 1, long_addr,
                                            rex, segprefix, &len );
         unsigned int data_size = (*instr == 0x8b) ? get_op_size( long_op, rex ) : 1;
-        unsigned int offset = data - user_shared_data;
+        SIZE_T offset = data - user_shared_data;
 
         if (offset <= sizeof(KSHARED_USER_DATA) - data_size)
         {
@@ -725,7 +725,7 @@ static DWORD emulate_instruction( EXCEPTION_RECORD *rec, CONTEXT *context )
     {
         BYTE *data = (BYTE *)(long_addr ? *(DWORD64 *)(instr + 1) : *(DWORD *)(instr + 1));
         unsigned int data_size = (*instr == 0xa1) ? get_op_size( long_op, rex ) : 1;
-        unsigned int offset = data - user_shared_data;
+        SIZE_T offset = data - user_shared_data;
         len = long_addr ? sizeof(DWORD64) : sizeof(DWORD);
 
         if (offset <= sizeof(KSHARED_USER_DATA) - data_size)
-- 
2.4.3



More information about the wine-patches mailing list