Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:65137 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 62272 invoked from network); 24 Jan 2013 00:13:37 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 24 Jan 2013 00:13:37 -0000 Authentication-Results: pb1.pair.com header.from=cryptocompress@googlemail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=cryptocompress@googlemail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain googlemail.com designates 209.85.215.170 as permitted sender) X-PHP-List-Original-Sender: cryptocompress@googlemail.com X-Host-Fingerprint: 209.85.215.170 mail-ea0-f170.google.com Received: from [209.85.215.170] ([209.85.215.170:56018] helo=mail-ea0-f170.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 04/68-30997-EAC70015 for ; Wed, 23 Jan 2013 19:13:36 -0500 Received: by mail-ea0-f170.google.com with SMTP id a11so3621201eaa.15 for ; Wed, 23 Jan 2013 16:13:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=20120113; h=x-received:message-id:date:from:user-agent:mime-version:to:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=Z4Xq4iT1yJXq2oxwV473wxURksa0/9hjM5TkgejrxfY=; b=fXMvAbotfKFZDcYoJb41N/6Y1ngEmaso/34lygpoLSFfVZwA7RQJ95whMdZR1wif8Z CeGLHwKvDh1e4FOExIg03kvPoEC6LK4dv5PJMjrzWzis73NwR5xyY+ih9B3gRnnH9E1j sCkPhZ1j6u+yZWV7P/ueLV2hguXB5Aud2yK6T3NEErk0VUkDbz6VhyihAD3KlStM1SGi yeH2PQAZl9BrfOX9JZh0RZymNAylEhquKAkbtfTACbtWxzGxru+qsK/hiNih02B9Pm2D i4T1rCfGiYU5+YsmwvLIMJhUU1EadF64wN5YNPjV+Z+ewXWsU+vdIRqd7L3aKbMSavYi yiVg== X-Received: by 10.14.215.194 with SMTP id e42mr113102eep.32.1358986411594; Wed, 23 Jan 2013 16:13:31 -0800 (PST) Received: from [192.168.1.111] (mnch-5d85de30.pool.mediaWays.net. [93.133.222.48]) by mx.google.com with ESMTPS id l3sm32925150een.14.2013.01.23.16.13.30 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 23 Jan 2013 16:13:30 -0800 (PST) Message-ID: <51007C51.50009@googlemail.com> Date: Thu, 24 Jan 2013 01:12:01 +0100 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130107 Thunderbird/17.0.2 MIME-Version: 1.0 To: internals@lists.php.net References: <510038C9.5000900@mrclay.org> <510065B8.7040608@zerocue.com> <510066F2.3040202@lerdorf.com> <5100675A.9040809@zerocue.com> <51006C84.2090307@googlemail.com> <5100761E.2090403@zerocue.com> In-Reply-To: <5100761E.2090403@zerocue.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [PHP-DEV] C# properties vs. accessors RFC From: cryptocompress@googlemail.com (Crypto Compress) Thank you! Will look at it tomorrow. Am 24.01.2013 00:45, schrieb Clint Priest: > On 1/23/2013 5:04 PM, Crypto Compress wrote: >> guard->in_unset = 1; /* Prevent recursion */ >> zend_call_method_with_1_params(&object, zobj->ce, &zobj->ce->__unset, >> ZEND_UNSET_FUNC_NAME, NULL, member); >> guard->in_unset = 0; /* Prevent recursion */ >> > a) That applies to __unset (magic method) only > b) guard is name specific (another name would have a different guard) > c) Those three lines are not new code, they have just been moved > around a bit. > > The code (for unset accessors) you are looking for is here: > https://github.com/cpriest/php-src/blob/accessors-5.5/Zend/zend_object_handlers.c#L986 > > >> this code would only prevent nested/parallel access to same accessor >> but not circular? >> e.g.: getter -> setter -> null-checker -> null-setter -> getter >> sorry it this is a dumb question :) >> >> cryptocompress >> >