From: Marek Vavrusa Date: Tue, 21 Jun 2016 17:18:32 +0000 (-0700) Subject: daemon: fixed memleak on exit X-Git-Tag: v1.1.0~71 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=95b243f07a610d6053b35d297cc4ef41fd98dc18;p=thirdparty%2Fknot-resolver.git daemon: fixed memleak on exit fixes #77 --- diff --git a/daemon/main.c b/daemon/main.c index 89095bcb6..4af644b70 100644 --- a/daemon/main.c +++ b/daemon/main.c @@ -53,6 +53,7 @@ static void tty_read(uv_stream_t *stream, ssize_t nread, const uv_buf_t *buf) if (stream_fd != STDIN_FILENO) { if (nread <= 0) { /* Close if disconnected */ uv_close((uv_handle_t *)stream, (uv_close_cb) free); + free(buf->base); return; } uv_os_fd_t dup_fd = dup(stream_fd); @@ -91,9 +92,9 @@ static void tty_read(uv_stream_t *stream, ssize_t nread, const uv_buf_t *buf) fprintf(fp_out, "\n"); fprintf(fp_out, "%s", delim); lua_settop(L, 0); - free(buf->base); } fflush(out); + free(buf->base); /* Close if redirected */ if (stream_fd != STDIN_FILENO) { fclose(out); /* outerr is the same */