sbase

suckless unix tools
git clone git://git.suckless.org/sbase
Log | Files | Refs | README | LICENSE

commit af392d1a764d7420c7b05bb9e13d7766a5979894
parent fa0e5d6378ca0619a76d3098ce21bb4c631e43ee
Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date:   Sun,  7 May 2017 13:50:26 +0200

libutil: fix leaks

Diffstat:
Mlibutil/cp.c | 4++++
1 file changed, 4 insertions(+), 0 deletions(-)

diff --git a/libutil/cp.c b/libutil/cp.c @@ -79,6 +79,7 @@ cp(const char *s1, const char *s2, int depth) if (mkdir(s2, st.st_mode) < 0 && errno != EEXIST) { weprintf("mkdir %s:", s2); cp_status = 1; + closedir(dp); return 0; } @@ -122,15 +123,18 @@ cp(const char *s1, const char *s2, int depth) if (unlink(s2) < 0 && errno != ENOENT) { weprintf("unlink %s:", s2); cp_status = 1; + fclose(f1); return 0; } else if (!(f2 = fopen(s2, "w"))) { weprintf("fopen %s:", s2); cp_status = 1; + fclose(f1); return 0; } } else { weprintf("fopen %s:", s2); cp_status = 1; + fclose(f1); return 0; } }