Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:23995 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 5913 invoked by uid 1010); 8 Jun 2006 17:06:13 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 5898 invoked from network); 8 Jun 2006 17:06:12 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 8 Jun 2006 17:06:12 -0000 X-PHP-List-Original-Sender: steph@zend.com X-Host-Fingerprint: 192.38.9.232 gw2.emini.dk Linux 2.4/2.6 Received: from ([192.38.9.232:12617] helo=gw2.emini.dk) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id C0/12-00946-40958844 for ; Thu, 08 Jun 2006 13:06:12 -0400 Received: from foxbox (IGLD-84-229-192-204.inter.net.il [84.229.192.204]) by gw2.emini.dk (Postfix) with ESMTP id 9F3DEB1C62; Thu, 8 Jun 2006 19:06:08 +0200 (CEST) Message-ID: <101101c68b1d$62e2eff0$6602a8c0@foxbox> Reply-To: "Steph Fox" To: "Stanislav Malyshev" , "Dmitry Stogov" Cc: References: <000001c68af5$50876930$6e02a8c0@thinkpad> Date: Thu, 8 Jun 2006 19:02:54 +0200 MIME-Version: 1.0 Content-Type: text/plain; format=flowed; charset="Windows-1252"; reply-type=original Content-Transfer-Encoding: 7bit X-Priority: 3 X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook Express 6.00.2900.2180 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180 Subject: Re: [PHP-DEV] [PATCH] Automatic module globals management From: steph@zend.com ("Steph Fox") > DS>>The attached patch (for PHP_5_2) implements automatic management of > module > DS>>globals. > DS>>The problem that module globals must be unregistered before extension > DS>>unloading, because "globls_dtor" function is unloaded together with > DS>>extension and cannot be called. > > I think the patch itself looks fine, and makes globals management cleaner. > However, I'm not sure it would be for 5.2 for reasons cited by Steph - > probably not a lot of extension would be reworked specifically for 5.2 > (correct me if I'm wrong here) but for 6.0 probably most of them would > need some massaging here and there, so putting it in 6.0 is quite OK, but > putting it into 5.2 probably would not be used too much outside the engine > modules - for which it doesn't matter much since we can fix them with old > API as far as I see. We can, but Dmitry broke the old API for win32 with his DL_UNLOAD exposure (which is where this redesign began). So a lot of modules simply won't work there without a little massaging at present - not a huge problem within PHP itself, but a niggling one for anyone with a non-public extension who thought they could just upgrade to PHP 5.1.3 and up. (A _very_ little massaging, but it's still a broken API.) I think we need to fix that API breakage in 5_2 regardless of what happens with this patch... - Steph