X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=xdiff-interface.c;h=164581f87f49935f0d1b1885420960a4d11dea56;hb=e3fa2465518b9a7c4d714edcf9b28bb4138cbaa6;hp=cd2285de1cb1faa9f7c6c97dd22210f20bb046a3;hpb=e3ed7f721c7bd4ecb5c98a29761ff2b2e6d38336;p=thirdparty%2Fgit.git diff --git a/xdiff-interface.c b/xdiff-interface.c index cd2285de1c..164581f87f 100644 --- a/xdiff-interface.c +++ b/xdiff-interface.c @@ -212,8 +212,10 @@ int read_mmfile(mmfile_t *ptr, const char *filename) return error("Could not open %s", filename); sz = xsize_t(st.st_size); ptr->ptr = xmalloc(sz ? sz : 1); - if (sz && fread(ptr->ptr, sz, 1, f) != 1) + if (sz && fread(ptr->ptr, sz, 1, f) != 1) { + fclose(f); return error("Could not read %s", filename); + } fclose(f); ptr->size = sz; return 0; @@ -286,9 +288,8 @@ static long ff_regexp(const char *line, long len, result = pmatch[i].rm_eo - pmatch[i].rm_so; if (result > buffer_size) result = buffer_size; - else - while (result > 0 && (isspace(line[result - 1]))) - result--; + while (result > 0 && (isspace(line[result - 1]))) + result--; memcpy(buffer, line, result); fail: free(line_buffer);