Fix tons and tons of parse errors.
[pspp] / dump.c
diff --git a/dump.c b/dump.c
index 0eade561af61b036296e761e71280d201f0b6b0e..d21e7af0fb5044b8f58bcd547f438462516e1cea 100644 (file)
--- a/dump.c
+++ b/dump.c
@@ -152,6 +152,9 @@ dump_value(int level)
   for (int i = 0; i <= level; i++)
     printf ("    ");
 
+  match_byte (0);
+  match_byte (0);
+  match_byte (0);
   match_byte (0);
   if (match_byte (3))
     {
@@ -214,8 +217,8 @@ dump_value(int level)
       match_byte_assert (0x58);
       printf ("variable \"%s\"", get_string());
       get_string();
-      if (!match_byte (3))
-        match_byte_assert (2);
+      if (!match_byte(1) && !match_byte(2))
+        match_byte_assert(3);
       match_byte (0);
       match_byte (0);
       match_byte (0);
@@ -473,7 +476,7 @@ dump_dim(void)
       match_byte_assert(0x58);
       get_string();
       printf("string \"%s\": ", get_string());
-      match_byte_assert(1);
+      match_byte(1) || match_byte(0);
     }
   else if (match_byte(5)) 
     {