[PATCH 01/19] programs/winedbg: let type_print_hex use dbg_lgint_t as its parameter type

Eric Pouech eric.pouech at gmail.com
Wed Dec 8 07:43:44 CST 2021


Signed-off-by: Eric Pouech <eric.pouech at gmail.com>

---
 programs/winedbg/memory.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/programs/winedbg/memory.c b/programs/winedbg/memory.c
index db4060d816a..d919922c058 100644
--- a/programs/winedbg/memory.c
+++ b/programs/winedbg/memory.c
@@ -360,13 +360,13 @@ static void dbg_print_longlong(LONGLONG sv, BOOL is_signed)
     dbg_printf("%s", ptr);
 }
 
-static void dbg_print_hex(DWORD size, ULONGLONG sv)
+static void dbg_print_hex(DWORD size, dbg_lgint_t sv)
 {
     if (!sv)
         dbg_printf("0");
     else
         /* clear unneeded high bits, esp. sign extension */
-        dbg_printf("%#I64x", sv & (~0LLU >> (64 - 8 * size)));
+        dbg_printf("%#I64x", sv & (~(dbg_lguint_t)0 >> (8 * (sizeof(dbg_lgint_t) - size))));
 }
 
 static void print_typed_basic(const struct dbg_lvalue* lvalue)
@@ -543,7 +543,7 @@ void print_basic(const struct dbg_lvalue* lvalue, char format)
         switch (format)
         {
         case 'x':
-            dbg_print_hex(size, (ULONGLONG)res);
+            dbg_print_hex(size, res);
             return;
 
         case 'd':




More information about the wine-devel mailing list