Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:42516 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 54020 invoked from network); 6 Jan 2009 20:09:18 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 6 Jan 2009 20:09:18 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 72.14.220.153 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 72.14.220.153 fg-out-1718.google.com Received: from [72.14.220.153] ([72.14.220.153:34430] helo=fg-out-1718.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 64/AE-07052-C6AB3694 for ; Tue, 06 Jan 2009 15:09:17 -0500 Received: by fg-out-1718.google.com with SMTP id 16so2701683fgg.23 for ; Tue, 06 Jan 2009 12:09:13 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=uDGP4hlfUim5ejRvcldyJTQx7WVNTBdteAr/xi1YXGM=; b=MQHVlwXR/jSHHshRiqxRLOWyvT1pngRT2T9GWdw+bTM5EYRFWyBj86VI+69kNVTPwO k8Qwp1i8VfdsnuVePuP69ofnp441sw7X4T3MNxfsIJg6d/xYbL9QlvlhWtWs756Gz1C3 qE836xjixKiWlDJUlax7f74dKNNYorB6+kgiA= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=qUkbSPzWBWGQBxlzmmjTczbqd85sHUfSZa8jPjdu0/HfsPnWlEWv4LLuqzJtN3sKgB FI+WQTdr4SedbeJhdmf+A2/GAN+4TM4MIdwH5N/VasJa6MhIdP/Zbg8fb5h6fjPjebn/ C17zmQAuUjghdbM4kpBm0BxkKzuDhO5CQAgVY= Received: by 10.86.72.3 with SMTP id u3mr13011039fga.1.1231272553809; Tue, 06 Jan 2009 12:09:13 -0800 (PST) Received: by 10.86.92.2 with HTTP; Tue, 6 Jan 2009 12:09:13 -0800 (PST) Message-ID: Date: Tue, 6 Jan 2009 21:09:13 +0100 To: "Hannes Magnusson" Cc: "PHP Developers Mailing List" , "Dmitry Stogov" , "Stanislav Malyshev" In-Reply-To: <7f3ed2c30901061200y6c6177d1p1b435766bbe77554@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <7f3ed2c30901061200y6c6177d1p1b435766bbe77554@mail.gmail.com> Subject: Re: [PHP-DEV] regression in the new parameter parsing API, 5.3 From: pierre.php@gmail.com ("Pierre Joye") On Tue, Jan 6, 2009 at 9:00 PM, Hannes Magnusson wrote: > On Tue, Jan 6, 2009 at 18:38, Pierre Joye wrote: >> hi, >> >> The new parameter parser introduced a regression (testing with >> 5.3-cvs) on how "z!" is processed. Example code: >> >> if (0) { >> $authns = 1; >> $addtl = 1; >> } >> $result = dns_get_record("php.net", DNS_ANY, $authns, $addtl); >> print_r($result); >> var_dump($authns); >> var_dump($addtl); >> >> With 5.2, $authns and $addtl are correctly set (zval ptr is not NULL) >> but 5.3 gives NULL. Sorry to do not try to fix it myself, I sadly lack >> the time to take care of that right now. > > Its not the API that is b0rking things, its the full rewrite of the function. > > z! means C NULL, not a zval IS_NULL, so the if (authns) and if (addtl) > checks will only kick in if the variables were initialized. It is still a regression. The same code worked in 5.2.x but returns nothing in 5.3+. We can argue than no notice (undefined variable) was raised in 5.2 (or 5.3), but it worked and should still work, imo. Cheers, -- Pierre http://blog.thepimp.net | http://www.libgd.org