From 4866cc6e548e1a01abac14dbff2c4814bb383ae2 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Mon, 27 Jul 2015 21:36:44 -0700 Subject: [PATCH] dump: Fix dumping all contents for all v1 and v3. The new special case for v1 bears further examination--probably the match values are significant. --- dump.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/dump.c b/dump.c index 0b7e82452b..73935a7337 100644 --- a/dump.c +++ b/dump.c @@ -252,10 +252,15 @@ dump_value_31(FILE *stream) { /* We only have one SPV file for this version (with many tables). */ - match_u32_assert(0x200); - match_u32_assert(0x1000000); - match_u32_assert(0); - match_byte_assert(0); + match_byte(0); + if (!match_u32(1)) + match_u32_assert(2); + match_byte(0); + match_byte(0); + if (!match_u32(0) && !match_u32(1) && !match_u32(2) && !match_u32(3) && !match_u32(4) && !match_u32(5) && !match_u32(6) && !match_u32(7) && !match_u32(8) && !match_u32(9)) + match_u32_assert(10); + match_byte(0); + match_byte(0); return; } @@ -663,6 +668,8 @@ dump_data(void) { printf (" \n", get_u32()); match_u32_assert(0); + if (version == 1) + match_byte(0); dump_value(stdout, 1, false); fprintf (stdout, " \n"); } -- 2.30.2