--- zlib-1.2.3.9/gzread.c 2010-02-16 08:55:45.000000000 +0100 +++ zlib-1.2.3.9-patched//gzread.c 2010-03-08 19:20:09.000000000 +0100 @@ -646,6 +646,7 @@ } gz_error(state, Z_OK, NULL); ret = close(state->fd); + free(state->path); free(state); return ret ? Z_ERRNO : Z_OK; } diff -u zlib-1.2.3.9/gzwrite.c zlib-1.2.3.9-patched//gzwrite.c --- zlib-1.2.3.9/gzwrite.c 2010-02-15 07:26:13.000000000 +0100 +++ zlib-1.2.3.9-patched//gzwrite.c 2010-03-08 19:20:02.000000000 +0100 @@ -524,6 +524,7 @@ free(state->out); free(state->in); ret += close(state->fd); + free(state->path); gz_error(state, Z_OK, NULL); free(state); return ret ? Z_ERRNO : Z_OK;