summaryrefslogtreecommitdiff
path: root/lib/csv.c
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2017-02-10 15:04:06 +0100
committerDavid Lamparter <equinox@opensourcerouting.org>2017-02-10 15:04:06 +0100
commit148781210fbcb1b26d5df678a400fa5dd8549e42 (patch)
tree78d57b0b68c54d029e47fdc834aacb0bc3815715 /lib/csv.c
parent01024b5235fb574b7a712d1363bc14df7cd1ad7e (diff)
lib: fix remaining coverity issues
Reported-by: Coverity Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'lib/csv.c')
-rw-r--r--lib/csv.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/csv.c b/lib/csv.c
index 4fd14918fd..d614ac3066 100644
--- a/lib/csv.c
+++ b/lib/csv.c
@@ -177,8 +177,11 @@ csv_decode_record(csv_record_t *rec)
field = strpbrk(curr, ",");
}
field = strstr(curr, "\n");
+ if (!field)
+ return;
+
fld = malloc(sizeof(csv_field_t));
- if (field && fld) {
+ if (fld) {
fld->field = curr;
fld->field_len = field-curr;
TAILQ_INSERT_TAIL(&(rec->fields), fld, next_field);
@@ -420,6 +423,7 @@ csv_clone_record (csv_t *csv, csv_record_t *in_rec, csv_record_t **out_rec)
curr = calloc(1, csv->buflen);
if (!curr) {
log_error("field str malloc failed\n");
+ free(rec);
return;
}
rec->record = curr;