diff options
| -rw-r--r-- | bp.c | 4 | ||||
| -rw-r--r-- | json.c | 2 |
2 files changed, 3 insertions, 3 deletions
@@ -165,7 +165,7 @@ static int is_text_file(const char *filename) // static int print_matches_as_json(def_t *defs, file_t *f, pat_t *pattern) { - int matches = 0; + static int matches = 0; for (match_t *m = NULL; (m = next_match(defs, f, m, pattern, options.skip, options.ignorecase)); ) { if (++matches > 1) printf(",\n"); @@ -173,7 +173,7 @@ static int print_matches_as_json(def_t *defs, file_t *f, pat_t *pattern) printf("\"tree\":{\"rule\":\"text\",\"start\":%d,\"end\":%ld,\"children\":[", 0, f->end - f->contents); json_match(f->contents, m, options.verbose); - printf("]}}\n"); + printf("]}}"); } return matches; } @@ -17,7 +17,7 @@ static int _json_match(const char *text, match_t *m, int comma, bool verbose); static int _json_match(const char *text, match_t *m, int comma, bool verbose) { if (!verbose) { - if (m->pat->type != BP_REF) { + if (m->pat->type != BP_REF && m->pat->type != BP_ERROR) { for (match_t *child = m->child; child; child = child->nextsibling) { comma |= _json_match(text, child, comma, verbose); } |
