summaryrefslogtreecommitdiff
path: root/tools/bit/util.cpp
diff options
context:
space:
mode:
authorGreg Kaiser <gkaiser@google.com>2018-03-26 14:01:38 -0700
committerGreg Kaiser <gkaiser@google.com>2018-03-26 14:01:38 -0700
commit5799d65f120ee3aa14a607fd2cd24ee8e03bc7d6 (patch)
tree1af34b00f7c73144274a0eaddf936f5da02d94b4 /tools/bit/util.cpp
parentfe3877f140d9f86406708b7ac40366f43175906d (diff)
tools/bit: Avoid leak in error condition
In the unlikely event of fread() failing, we want to avoid leaking our buffer or the file handle. Test: Treehugger Change-Id: I1866d00c74ad38af4559d747fee696a60464c9f0
Diffstat (limited to 'tools/bit/util.cpp')
-rw-r--r--tools/bit/util.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/tools/bit/util.cpp b/tools/bit/util.cpp
index 922393146b10..a502a9dbe736 100644
--- a/tools/bit/util.cpp
+++ b/tools/bit/util.cpp
@@ -241,6 +241,8 @@ read_file(const string& filename)
char* buf = (char*)malloc(size);
if ((size_t) size != fread(buf, 1, size, file)) {
+ free(buf);
+ fclose(file);
return string();
}