diff options
| author | Tadas Vilkeliskis <vilkeliskis.t@gmail.com> | 2026-06-11 10:11:48 -0400 |
|---|---|---|
| committer | Tadas Vilkeliskis <vilkeliskis.t@gmail.com> | 2026-06-11 10:11:48 -0400 |
| commit | 0528c6e5fa65953da71b95e41ea38b0554b4c2e0 (patch) | |
| tree | e26228cc8a131513a4390fdb9c6c436ff139d995 /examples/parser.c | |
| parent | ac5f6c3a8de0bd94d1d62e946ec0de8bcafff098 (diff) | |
examples: add error checking to parser.c
Diffstat (limited to 'examples/parser.c')
| -rw-r--r-- | examples/parser.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/examples/parser.c b/examples/parser.c index 5666f5e..49d73f6 100644 --- a/examples/parser.c +++ b/examples/parser.c @@ -80,8 +80,14 @@ int main(int argc, const char *argv[]) while ((nread = read(fd, buffer, sizeof(buffer))) > 0) { csv_parser_execute(&parser, &settings, buffer, nread); + if (parser.state == csvps_error) { + fprintf(stderr, "Error: Malformed CSV data detected at row %d, col %d.\n", parser.row, parser.col); + break; + } + } + if (parser.state != csvps_error) { + csv_parser_finish(&parser, &settings); } - csv_parser_finish(&parser, &settings); close(fd); |
