- * For now, just skip it until $end. */
- read_until(file, NULL, '$');
+ * $dump* contain useful data, but other tags will be skipped until $end. */
+ if (g_strcmp0(token->str, "$dumpvars") == 0 ||
+ g_strcmp0(token->str, "$dumpon") == 0 ||
+ g_strcmp0(token->str, "$dumpoff") == 0 ||
+ g_strcmp0(token->str, "$end") == 0)
+ {
+ /* Ignore, parse contents as normally. */
+ }
+ else
+ {
+ /* Skip until $end */
+ read_until(file, NULL, '$');
+ }
+ }
+ else if (strchr("bBrR", token->str[0]) != NULL)
+ {
+ /* A vector value. Skip it and also the following identifier. */
+ read_until(file, NULL, 'N');
+ read_until(file, NULL, 'W');