[Bug 1071315] Re: Memory leak in inflateReset2 causes follow-up problems

Lei Zhang thestig at google.com
Wed Feb 6 02:00:00 UTC 2013


The zlib FAQ is talking about deflate. Are you sure this memory error in
inflate is what the FAQ is referring to?

The same bug on the Debian bug tracker got acknowledged as a legit bug and was marked fixed in 1.2.4.
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=577135

** Bug watch added: Debian Bug tracker #577135
   http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=577135

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to zlib in Ubuntu.
https://bugs.launchpad.net/bugs/1071315

Title:
  Memory leak in inflateReset2 causes follow-up problems

Status in “zlib” package in Ubuntu:
  Invalid

Bug description:
  There appears to be a memory leak in inflateReset2 of the library
  libz.so.1.2.3.4. The memory leak consecutively causes errors in the
  application using zlib (OpenFOAM CFD software in my case).

  This memory leak has been also identified and tracked down here:
  http://stackoverflow.com/questions/12483612/libzip-example-contains-uninitialised-values-when-checked-with-valgrind

  System is: Ubuntu 12.04.1 LTS
  zlib is: libz.so.1.2.3.4
  zlib package version is: 1:1.2.3.4.dfsg-3ubuntu4

  The output of valgrind with memcheck and track-origins in my case is:
  ==5601== Conditional jump or move depends on uninitialised value(s)
  ==5601==    at 0xC8704E0: inflateReset2 (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
  ==5601==    by 0xC8705D8: inflateInit2_ (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
  ==5601==    by 0xC86A323: ??? (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
  ==5601==    by 0x98AAFE9: gzstreambuf::open(char const*, int) (gzstream.C:61)
  ==5601==    by 0x98AB748: gzstreambase::open(char const*, int) (gzstream.C:150)
  ==5601==    by 0x98AB435: gzstreambase::gzstreambase(char const*, int) (gzstream.C:142)
  ==5601==    by 0x98AC305: igzstream::igzstream(char const*, int) (gzstream.h:161)
  ==5601==    by 0x98ABBCA: Foam::IFstreamAllocator::IFstreamAllocator(Foam::fileName const&) (IFstream.C:65)
  ==5601==    by 0x98ABDAC: Foam::IFstream::IFstream(Foam::fileName const&, Foam::IOstream::streamFormat, Foam::IOstream::versionNumber) (IFstream.C:110)
  ==5601==    by 0x98C4FE4: Foam::IOobject::objectStream() (IOobject.C:324)
  ==5601==    by 0x98C5088: Foam::IOobject::headerOk() (IOobject.C:347)
  ==5601==    by 0x98C345B: Foam::IOdictionary::IOdictionary(Foam::IOobject const&) (IOdictionary.C:50)
  ==5601==  Uninitialised value was created by a heap allocation
  ==5601==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
  ==5601==    by 0xC8705B6: inflateInit2_ (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
  ==5601==    by 0xC86A323: ??? (in /lib/x86_64-linux-gnu/libz.so.1.2.3.4)
  ==5601==    by 0x98AAFE9: gzstreambuf::open(char const*, int) (gzstream.C:61)
  ==5601==    by 0x98AB748: gzstreambase::open(char const*, int) (gzstream.C:150)
  ==5601==    by 0x98AB435: gzstreambase::gzstreambase(char const*, int) (gzstream.C:142)
  ==5601==    by 0x98AC305: igzstream::igzstream(char const*, int) (gzstream.h:161)
  ==5601==    by 0x98ABBCA: Foam::IFstreamAllocator::IFstreamAllocator(Foam::fileName const&) (IFstream.C:65)
  ==5601==    by 0x98ABDAC: Foam::IFstream::IFstream(Foam::fileName const&, Foam::IOstream::streamFormat, Foam::IOstream::versionNumber) (IFstream.C:110)
  ==5601==    by 0x98C4FE4: Foam::IOobject::objectStream() (IOobject.C:324)
  ==5601==    by 0x98C5088: Foam::IOobject::headerOk() (IOobject.C:347)
  ==5601==    by 0x98C345B: Foam::IOdictionary::IOdictionary(Foam::IOobject const&) (IOdictionary.C:50)
  ==5601== 

  Thanks for having a look!

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/zlib/+bug/1071315/+subscriptions




More information about the foundations-bugs mailing list