Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:5329 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 90054 invoked by uid 1010); 10 Nov 2003 02:52:00 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 90008 invoked by uid 1007); 10 Nov 2003 02:52:00 -0000 Message-ID: <20031110025200.90007.qmail@pb1.pair.com> To: internals@lists.php.net Date: Mon, 10 Nov 2003 00:51:47 -0200 Lines: 70 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_NextPart_000_0007_01C3A724.D196FB60" X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1106 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106 X-Posted-By: 200.196.104.198 Subject: internal hashtables [patch included] From: cunha17@uol.com.br ("Cristiano Duarte") ------=_NextPart_000_0007_01C3A724.D196FB60 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Hi all, I guess I found a bug at "zend_compile.c". IMHO when you want to create = an internal hashtable, that will be filled with internal zvals = (malloc'ed instead of emalloc'ed), you should pass the "internal zval = destructor" to the hashtable initialization function. Currently, = "zend_compile.c" uses the "default zval destructor" for internal and = standard zvals. It leads to some error messages (about efree'ing blocks = that weren't emalloc'ed) at the end of execution. Am I right, I mean is this the correct behaviour of an internal = hashtable ? Anyway, the patch attached fixes it. Best Regards, Cristiano Duarte ------=_NextPart_000_0007_01C3A724.D196FB60--