Fix jv_load_file() (partial fix #799)

This commit is contained in:
Nicolas Williams committed 2015-05-29 11:48:10 -05:00
1 parent 89c57f7936
commit 4451c08007
1 file changed
+7 -3
+7 -3
View File
@@ -30,14 +30,18 @@ jv jv_load_file(const char* filename, int raw) {
jv value;
while (jv_is_valid((value = jv_parser_next(parser))))
data = jv_array_append(data, value);
jv_free(value);
if (jv_invalid_has_msg(jv_copy(value))) {
jv_free(data);
data = value;
value = jv_invalid();
break;
}
}
}
if (!raw)
jv_parser_free(parser);
int badread = ferror(file);
fclose(file);
if (badread) {
if (fclose(file) != 0 || badread) {
jv_free(data);
return jv_invalid_with_msg(jv_string_fmt("Error reading from %s",
filename));