diff options
author | Mark Adler <madler@alumni.caltech.edu> | 2019-05-25 22:23:20 -0700 |
---|---|---|
committer | Mark Adler <madler@alumni.caltech.edu> | 2019-05-25 22:23:20 -0700 |
commit | 02064366155215162223417b939deebfe563ded0 (patch) | |
tree | d85c328da9b21793632fcdb088216a2089bb97ff /examples | |
parent | 79baebe50e4d6b73ae1f8b603f0ef41300110aa3 (diff) | |
download | zlib-02064366155215162223417b939deebfe563ded0.tar.gz |
Fix memory leak on error in gzlog.c.
Thank you Adam Richter.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/gzlog.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/examples/gzlog.c b/examples/gzlog.c index b8c2927..b977802 100644 --- a/examples/gzlog.c +++ b/examples/gzlog.c @@ -1,8 +1,8 @@ /* * gzlog.c - * Copyright (C) 2004, 2008, 2012, 2016 Mark Adler, all rights reserved + * Copyright (C) 2004, 2008, 2012, 2016, 2019 Mark Adler, all rights reserved * For conditions of distribution and use, see copyright notice in gzlog.h - * version 2.2, 14 Aug 2012 + * version 2.3, 25 May 2019 */ /* @@ -756,12 +756,14 @@ local int log_recover(struct log *log, int op) return -2; } if ((fd = open(log->path, O_RDONLY, 0)) < 0) { + free(data); log_log(log, op, ".add file read failure"); return -1; } ret = (size_t)read(fd, data, len) != len; close(fd); if (ret) { + free(data); log_log(log, op, ".add file read failure"); return -1; } |