match_byte(0);
match_byte(0);
match_byte(0);
- if (match_byte (1))
- {
- unsigned int format;
- double value;
-
- if (match_byte (0x31))
- {
- if (match_u32 (1))
- {
- printf("(footnote %d) ", get_u32());
- match_byte_assert (0);
- match_byte_assert (0);
- int subn = get_u32 ();
- printf ("nested %d bytes", subn);
- pos += subn;
- }
- }
- else
- match_byte_assert (0x58);
- format = get_u32 ();
- value = get_double ();
- printf ("value %g format %d(%d.%d)", value, format >> 16, (format >> 8) & 0xff, format & 0xff);
- match_byte (1);
- match_byte (0);
- match_byte (0);
- match_byte (0);
- match_byte (1);
- }
+ if (data[pos] == 1)
+ dump_footnote_value(0);
else if (match_byte (0x31))
{
+ /* Custom footnote marker string. */
match_byte_assert(3);
get_string();
match_byte_assert(0x58);
match_u32_assert(0);
get_string();
- match_byte(0);
}
else
match_byte_assert (0x58);