[libFuzzer] fix missing close on opened file
authorVitaly Buka <vitalybuka@google.com>
Tue, 26 Feb 2019 19:33:00 +0000 (19:33 +0000)
committerVitaly Buka <vitalybuka@google.com>
Tue, 26 Feb 2019 19:33:00 +0000 (19:33 +0000)
Summary:
When running the standalone main on a large corpus, I eventually get a
EMFILE error ("Too many open files").

Patch by Paul Chaignon

Reviewers: kcc, vitalybuka

Reviewed By: vitalybuka

Subscribers: lebedev.ri, #sanitizers, llvm-commits

Tags: #llvm, #sanitizers

Differential Revision: https://reviews.llvm.org/D58622

llvm-svn: 354918

compiler-rt/lib/fuzzer/standalone/StandaloneFuzzTargetMain.c

index 1d12172..efe512c 100644 (file)
@@ -32,6 +32,7 @@ int main(int argc, char **argv) {
     fseek(f, 0, SEEK_SET);
     unsigned char *buf = (unsigned char*)malloc(len);
     size_t n_read = fread(buf, 1, len, f);
+    fclose(f);
     assert(n_read == len);
     LLVMFuzzerTestOneInput(buf, len);
     free(buf);