Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:261 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 2224 invoked from network); 25 Mar 2003 12:25:04 -0000 Received: from unknown (HELO err) (212.199.104.98) by pb1.pair.com with SMTP; 25 Mar 2003 12:25:04 -0000 Received: by err (Postfix, from userid 1000) id BCC68135DF; Tue, 25 Mar 2003 14:25:05 +0200 (IST) Received: from localhost (localhost [127.0.0.1]) by err (Postfix) with ESMTP id 920C0135DE for ; Tue, 25 Mar 2003 14:25:05 +0200 (IST) Date: Tue, 25 Mar 2003 14:25:05 +0200 (IST) X-X-Sender: tal@err To: PHP Development ML In-Reply-To: Message-ID: References: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-466653481-1048595105=:8548" Subject: Re: [PHP-DEV] [PATCH] get_declared_classes NS support and a little bug From: tal@php.net (Tal Peer) --0-466653481-1048595105=:8548 Content-Type: TEXT/PLAIN; charset=US-ASCII On Mon, 24 Mar 2003, Tal Peer wrote: Ok, attached is a revised patch that also compiles in zts :) > Hello, > I've changed get_declared_classes behaviour a bit in order to add > namespaces support (NS::class format). See attached patch. > > Currently, due to what seems to me as a bug, it outputs every user-defined > class (inside a namespace, that is) twice. I checked, and EG(class_table) > seems to contain each namespace entry twice. This can be workedaround with > a little hack, but i guess it should be fixed. > > -- > Tal Peer > tal@php.net -- Tal Peer tal@php.net --0-466653481-1048595105=:8548 Content-Type: TEXT/PLAIN; charset=US-ASCII; name="get_declared_classes.diff" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: attachment; filename="get_declared_classes.diff" SW5kZXg6IHplbmRfYnVpbHRpbl9mdW5jdGlvbnMuYw0KPT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PQ0KUkNTIGZpbGU6IC9yZXBvc2l0b3J5L1plbmRFbmdpbmUy L3plbmRfYnVpbHRpbl9mdW5jdGlvbnMuYyx2DQpyZXRyaWV2aW5nIHJldmlz aW9uIDEuMTc1DQpkaWZmIC11IC1yMS4xNzUgemVuZF9idWlsdGluX2Z1bmN0 aW9ucy5jDQotLS0gemVuZF9idWlsdGluX2Z1bmN0aW9ucy5jCTUgTWFyIDIw MDMgMTE6MTQ6NDEgLTAwMDAJMS4xNzUNCisrKyB6ZW5kX2J1aWx0aW5fZnVu Y3Rpb25zLmMJMjUgTWFyIDIwMDMgMTM6MTU6NTcgLTAwMDANCkBAIC0xMDQ0 LDE1ICsxMDQ0LDMxIEBADQogfQ0KIC8qIH19fSAqLw0KIA0KK3N0YXRpYyBp bnQgY29weV9jbGFzc19uYW1lX2Zyb21fbmFtZXNwYWNlKHplbmRfY2xhc3Nf ZW50cnkgKipwY2UsIHp2YWwgKmFycmF5IFRTUk1MU19EQykNCit7DQorCXpl bmRfY2xhc3NfZW50cnkgKmNlID0gKnBjZTsNCisJY2hhciAqZnVsbG5hbWUg PSBkb19hbGxvY2EoY2UtPm5zLT5uYW1lX2xlbmd0aCArIGNlLT5uYW1lX2xl bmd0aCArIDMpOw0KKwkNCisJemVuZF9zcHJpbnRmKGZ1bGxuYW1lLCAiJXM6 OiVzIiwgY2UtPm5zLT5uYW1lLCBjZS0+bmFtZSk7DQorCWFkZF9uZXh0X2lu ZGV4X3N0cmluZ2woYXJyYXksIGZ1bGxuYW1lLCBjZS0+bnMtPm5hbWVfbGVu Z3RoICsgY2UtPm5hbWVfbGVuZ3RoICsgMywgMSk7DQorCWZyZWVfYWxsb2Nh KGZ1bGxuYW1lKTsNCisJDQorCXJldHVybiAwOw0KK30NCiANCi1zdGF0aWMg aW50IGNvcHlfY2xhc3NfbmFtZSh6ZW5kX2NsYXNzX2VudHJ5ICoqcGNlLCBp bnQgbnVtX2FyZ3MsIHZhX2xpc3QgYXJncywgemVuZF9oYXNoX2tleSAqaGFz aF9rZXkpDQorc3RhdGljIGludCBjb3B5X2NsYXNzX25hbWUoemVuZF9jbGFz c19lbnRyeSAqKnBjZSwgaW50IG51bV9hcmdzLCB2YV9saXN0IGFyZ3MsIHpl bmRfaGFzaF9rZXkgKmhhc2hfa2V5IFRTUk1MU19EQykNCiB7DQogCXp2YWwg KmFycmF5ID0gdmFfYXJnKGFyZ3MsIHp2YWwgKik7DQogCXplbmRfY2xhc3Nf ZW50cnkgKmNlICA9ICpwY2U7DQogDQogCWlmIChoYXNoX2tleS0+bktleUxl bmd0aD09MCB8fCBoYXNoX2tleS0+YXJLZXlbMF0hPTApIHsNCi0JCWFkZF9u ZXh0X2luZGV4X3N0cmluZ2woYXJyYXksIGNlLT5uYW1lLCBjZS0+bmFtZV9s ZW5ndGgsIDEpOw0KKwkJaWYgKGNlLT50eXBlID09IFpFTkRfTkFNRVNQQUNF KSB7DQorCQkJemVuZF9oYXNoX2FwcGx5X3dpdGhfYXJndW1lbnQoJmNlLT5j bGFzc190YWJsZSwgKGFwcGx5X2Z1bmNfYXJnX3QpIGNvcHlfY2xhc3NfbmFt ZV9mcm9tX25hbWVzcGFjZSwgYXJyYXkgVFNSTUxTX0NDKTsNCisJCX0gZWxz ZSB7DQorCQkJYWRkX25leHRfaW5kZXhfc3RyaW5nbChhcnJheSwgY2UtPm5h bWUsIGNlLT5uYW1lX2xlbmd0aCsxLCAxKTsNCisJCX0NCiAJfQ0KKw0KIAly ZXR1cm4gMDsNCiB9DQogDQpAQCAtMTA2Niw3ICsxMDgyLDcgQEANCiAJfQ0K IA0KIAlhcnJheV9pbml0KHJldHVybl92YWx1ZSk7DQotCXplbmRfaGFzaF9h cHBseV93aXRoX2FyZ3VtZW50cyhFRyhjbGFzc190YWJsZSksIChhcHBseV9m dW5jX2FyZ3NfdCkgY29weV9jbGFzc19uYW1lLCAxLCByZXR1cm5fdmFsdWUp Ow0KKwl6ZW5kX2hhc2hfYXBwbHlfd2l0aF9hcmd1bWVudHMoRUcoY2xhc3Nf dGFibGUpLCAoYXBwbHlfZnVuY19hcmdzX3QpIGNvcHlfY2xhc3NfbmFtZSwg MSwgcmV0dXJuX3ZhbHVlIFRTUk1MU19DQyk7DQogfQ0KIC8qIH19fSAqLw0K IA0K --0-466653481-1048595105=:8548--