commit 0bb4abaee2617204613bd5d88c90e1c407a50cc3 from: Stefan Sperling date: Fri Mar 15 11:50:27 2019 UTC better fparseln error handling and memory leak fix in got_ref_list() commit - 7ab0422aff525c78e854d0001ce01da9541b3cd5 commit + 0bb4abaee2617204613bd5d88c90e1c407a50cc3 blob - 07d58e1a0c7abcae6e6bc3ecd53d77f3bd512b5e blob + 739dc463c5ac0a9c46b763779baeb00bb886279d --- lib/reference.c +++ lib/reference.c @@ -703,9 +703,14 @@ got_ref_list(struct got_reflist_head *refs, struct got const char delim[3] = {'\0', '\0', '\0'}; while (1) { line = fparseln(f, &len, NULL, delim, 0); - if (line == NULL) - break; + if (line == NULL) { + if (feof(f)) + break; + err = got_ferror(f, GOT_ERR_BAD_REF_DATA); + goto done; + } err = parse_packed_ref_line(&ref, NULL, line); + free(line); if (err) goto done; if (ref) {