Commit 242a17b9 authored by Daniel Stenberg's avatar Daniel Stenberg
Browse files

- Balint Szilakszi reported a memory leak when libcurl did gzip decompression

  of streams that had some parts (legitimately) missing. We now provide and use
  a proper cleanup function for the content encoding submodule.
  http://curl.haxx.se/mail/lib-2009-05/0092.html
parent 6e1632c6
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -7,6 +7,11 @@
                                  Changelog

Daniel Stenberg (11 May 2009)
- Balint Szilakszi reported a memory leak when libcurl did gzip decompression
  of streams that had some parts (legitimately) missing. We now provide and use
  a proper cleanup function for the content encoding submodule.
  http://curl.haxx.se/mail/lib-2009-05/0092.html

- Kamil Dudka provided a fix for libcurl-NSS reported by Michael Cronenworth
  at https://bugzilla.redhat.com/show_bug.cgi?id=453612#c12

+3 −1
Original line number Diff line number Diff line
@@ -46,6 +46,7 @@ This release includes the following bugfixes:
 o fixed the Curl_getoff_all_pipelines SIGSEGV 
 o POST, NTLM and following a redirect hang
 o libcurl+NSS endless loop on incorrect password for private key
 o gzip decompression memory leak

This release includes the following known bugs:

@@ -59,6 +60,7 @@ advice from friends like these:
 Kamil Dudka, Jim Freeman, Daniel Johnson, Toshio Kuratomi, Martin Storsjo,
 Pramod Sharma, Gisle Vanem, Lenaic Lefever, Rainer Koenig, Sven Wegener,
 Tim Chen, Constantine Sapuntzakis, David McCreedy, Michael Smith,
 Colin Watson, Ebenezer Ikonne, Laurent Rabret, Michael Cronenworth
 Colin Watson, Ebenezer Ikonne, Laurent Rabret, Michael Cronenworth,
 Balint Szilakszi

        Thanks! (and sorry if I forgot to mention someone)
+3 −1
Original line number Diff line number Diff line
@@ -9,10 +9,12 @@ To be addressed in 7.19.5 (planned release: May 2009)
      - awaiting patch rework/breakdown

235 - #2784055, connect race with multi and socks proxy
      Code adjustment for FTP over socks proxy remains

236 - timeout in milliseconds doesn't seem to work
      http://curl.haxx.se/mail/lib-2009-05/0021.html

239 -
240 - 

To be addressed in 7.19.6 (planned release: July 2009)
=========================
+10 −0
Original line number Diff line number Diff line
@@ -414,4 +414,14 @@ Curl_unencode_gzip_write(struct connectdata *conn,
  return inflate_stream(conn, k);
#endif
}

void Curl_unencode_cleanup(struct connectdata *conn)
{
  struct SessionHandle *data = conn->data;
  struct SingleRequest *k = &data->req;
  z_stream *z = &k->z;
  if(k->zlib_init != ZLIB_UNINIT)
    (void) exit_zlib(z, &k->zlib_init, CURLE_OK);
}

#endif /* HAVE_LIBZ */
+5 −1
Original line number Diff line number Diff line
@@ -7,7 +7,7 @@
 *                            | (__| |_| |  _ <| |___
 *                             \___|\___/|_| \_\_____|
 *
 * Copyright (C) 1998 - 2008, Daniel Stenberg, <daniel@haxx.se>, et al.
 * Copyright (C) 1998 - 2009, Daniel Stenberg, <daniel@haxx.se>, et al.
 *
 * This software is licensed as described in the file COPYING, which
 * you should have received as part of this distribution. The terms
@@ -29,8 +29,11 @@
 */
#ifdef HAVE_LIBZ
#define ALL_CONTENT_ENCODINGS "deflate, gzip"
/* force a cleanup */
void Curl_unencode_cleanup(struct connectdata *conn);
#else
#define ALL_CONTENT_ENCODINGS "identity"
#define Curl_unencode_cleanup(x)
#endif

CURLcode Curl_unencode_deflate_write(struct connectdata *conn,
@@ -42,4 +45,5 @@ Curl_unencode_gzip_write(struct connectdata *conn,
                         struct SingleRequest *k,
                         ssize_t nread);


#endif
Loading