Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:11864 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 22236 invoked by uid 1010); 3 Aug 2004 10:36:07 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 22177 invoked from network); 3 Aug 2004 10:36:07 -0000 Received: from unknown (HELO out2.smtp.messagingengine.com) (66.111.4.26) by pb1.pair.com with SMTP; 3 Aug 2004 10:36:07 -0000 Received: from server3.messagingengine.com (server3.internal [10.202.2.134]) by mail.messagingengine.com (Postfix) with ESMTP id 3D302C13A6E for ; Tue, 3 Aug 2004 06:36:06 -0400 (EDT) Received: by server3.messagingengine.com (Postfix, from userid 99) id C239B17CE5E; Tue, 3 Aug 2004 06:36:06 -0400 (EDT) Content-Disposition: inline Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="iso-8859-1" MIME-Version: 1.0 X-Mailer: MIME::Lite 1.4 (F2.72; T1.001; A1.62; B3.01; Q3.01) To: internals@lists.php.net Date: Tue, 03 Aug 2004 03:36:06 -0700 X-Sasl-Enc: 5QPjbv0u66Brzy8phUpWeA 1091529366 Message-ID: <1091529366.28110.201590128@webmail.messagingengine.com> Subject: dom extension corrupting the Exception class From: kameshj@fastmail.fm ("Kamesh Jayachandran") Hi All, I found the following behaviour. I think it is a bug please clarify. In php-5.0.0 1)Exception class is registered from zend_exceptions.c 2)After this If I see the common.fn_flags of constructor member of Exception class entry it is 0x2100(Public Constructor). Till this point is fine. 3)When dom extension is getting started It registers the DOMException class to the CG(class_table) in that process it inherits from the Exception class_entry and gets a constructor member pointer of Exception class_entry. 4)dom extension startup routine updates this constructor pointer's class_entry->common.fn_flags|=ZEND_ACC_PROTECTED and hence to 0x2300. 5)This causes me not to get the access specifier of __construct constructor of Exception class if I access it from as "Public". Is this a accepted behaviour? I see even though ReflectionException and SQLiteException extends Exception they have their __construct method set to some function pointer or else to NULL not just left at all. This is no the case with DOMException. With regards Kamesh Jayachandran