[PATCH 3/5] tools/winedump: support dumping quad word values in enumerations
Eric Pouech
eric.pouech at gmail.com
Wed Dec 15 06:32:05 CST 2021
Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
---
tools/winedump/msc.c | 13 +++++++------
1 file changed, 7 insertions(+), 6 deletions(-)
diff --git a/tools/winedump/msc.c b/tools/winedump/msc.c
index 9868770abbb..7b90aa362fe 100644
--- a/tools/winedump/msc.c
+++ b/tools/winedump/msc.c
@@ -504,6 +504,7 @@ static void do_field(const unsigned char* start, const unsigned char* end)
const char* cstr;
const struct p_string* pstr;
int leaf_len, value;
+ struct full_value full_value;
while (ptr < end)
{
@@ -518,18 +519,18 @@ static void do_field(const unsigned char* start, const unsigned char* end)
switch (fieldtype->generic.id)
{
case LF_ENUMERATE_V1:
- leaf_len = numeric_leaf(&value, &fieldtype->enumerate_v1.value);
+ leaf_len = full_numeric_leaf(&full_value, &fieldtype->enumerate_v1.value);
pstr = PSTRING(&fieldtype->enumerate_v1.value, leaf_len);
- printf("\t\tEnumerate V1: '%s' value:%d\n",
- p_string(pstr), value);
+ printf("\t\tEnumerate V1: '%s' value:%s\n",
+ p_string(pstr), full_value_string(&full_value));
ptr += 2 + 2 + leaf_len + 1 + pstr->namelen;
break;
case LF_ENUMERATE_V3:
- leaf_len = numeric_leaf(&value, &fieldtype->enumerate_v3.value);
+ leaf_len = full_numeric_leaf(&full_value, &fieldtype->enumerate_v3.value);
cstr = (const char*)&fieldtype->enumerate_v3.value + leaf_len;
- printf("\t\tEnumerate V3: '%s' value:%d\n",
- cstr, value);
+ printf("\t\tEnumerate V3: '%s' value:%s\n",
+ cstr, full_value_string(&full_value));
ptr += 2 + 2 + leaf_len + strlen(cstr) + 1;
break;
More information about the wine-devel
mailing list