From owner-freebsd-hackers@FreeBSD.ORG Mon Mar 14 19:37:57 2005 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 319FF16A4CE for ; Mon, 14 Mar 2005 19:37:57 +0000 (GMT) Received: from mgw-x4.nokia.com (mgw-x4.nokia.com [131.228.20.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2769F43D46 for ; Mon, 14 Mar 2005 19:37:56 +0000 (GMT) (envelope-from Vijay.Singh@nokia.com) Received: from esdks001.ntc.nokia.com (esdks001.ntc.nokia.com [172.21.138.120])j2EJcOA19361 for ; Mon, 14 Mar 2005 21:38:24 +0200 (EET) X-Scanned: Mon, 14 Mar 2005 21:52:41 +0200 Nokia Message Protector V1.3.34 2004121512 - RELEASE Received: (from root@localhost) by esdks001.ntc.nokia.com (8.12.9/8.12.9) id j2EJqfJZ018805 for ; Mon, 14 Mar 2005 21:52:41 +0200 Received: from mgw-int1.ntc.nokia.com (172.21.143.96) by esdks001.ntc.nokia.com 00NONdo6; Mon, 14 Mar 2005 21:52:31 EET Received: from daebh001.NOE.Nokia.com (daebh001.americas.nokia.com [10.241.35.121])j2EJbCM06212 for ; Mon, 14 Mar 2005 21:37:12 +0200 (EET) Received: from mvebe001.NOE.Nokia.com ([172.18.140.37]) by daebh001.NOE.Nokia.com with Microsoft SMTPSVC(5.0.2195.6881); Mon, 14 Mar 2005 13:36:23 -0600 X-MimeOLE: Produced By Microsoft Exchange V6.0.6603.0 content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Date: Mon, 14 Mar 2005 11:36:21 -0800 Message-ID: X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: memory leak in inflate.c Thread-Index: AcUozRmLrCokB1YjRxWUInMbMuggYw== From: To: X-OriginalArrivalTime: 14 Mar 2005 19:36:23.0551 (UTC) FILETIME=[1AF3A8F0:01C528CD] Subject: memory leak in inflate.c X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Mar 2005 19:37:57 -0000 Hi, I am trying to debug a memory leak in executing gzipped binaries = when the parameter list is too long. The function in question is = inflate_dynamic().=20 /* decompress until an end-of-block code */ if (inflate_codes(glbl, tl, td, bl, bd)) return 1; /* free the decoding tables, return */ huft_free(glbl, tl); huft_free(glbl, td); return 0; Should this be re-written as: i =3D inflate_codes(glbl, tl, td, bl, bd) ? 1 : 0; =20 /* free the decoding tables, return */ huft_free(glbl, tl); huft_free(glbl, td); return (i); so that the Huffman tables are always freed. Comments appreciated. br vijay =09