Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:26517 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 74495 invoked by uid 1010); 11 Nov 2006 15:59:51 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 74480 invoked from network); 11 Nov 2006 15:59:51 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 11 Nov 2006 15:59:51 -0000 Authentication-Results: pb1.pair.com smtp.mail=kingwez@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=kingwez@gmail.com; sender-id=pass; domainkeys=good Received-SPF: pass (pb1.pair.com: domain gmail.com designates 64.233.182.187 as permitted sender) DomainKey-Status: good X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: kingwez@gmail.com X-Host-Fingerprint: 64.233.182.187 nf-out-0910.google.com Linux 2.4/2.6 Received: from [64.233.182.187] ([64.233.182.187:29056] helo=nf-out-0910.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 13/2B-30157-373F5554 for ; Sat, 11 Nov 2006 10:59:49 -0500 Received: by nf-out-0910.google.com with SMTP id l35so1592142nfa for ; Sat, 11 Nov 2006 07:59:44 -0800 (PST) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=VZTO+t6m5CQY0hUokuesVapxFUUrsPEWgq7Wvg/yM7Z4Px4o+TI+n4iHpSWmedZOuuGgzVnp8mctJDvc2FrjmO4fG8cddHecEp1AbBqgkaGfoK1N/tEWtl958Gg+gAAr1Jk05kncEjsO6HjM10Hjj42NlGtt4EGv4EAxhbTnxCM= Received: by 10.82.136.4 with SMTP id j4mr438322bud.1163260784157; Sat, 11 Nov 2006 07:59:44 -0800 (PST) Received: by 10.82.167.13 with HTTP; Sat, 11 Nov 2006 07:59:43 -0800 (PST) Message-ID: <4e89b4260611110759p3450dbe8v18afdeea3c3a717a@mail.gmail.com> Date: Sat, 11 Nov 2006 10:59:43 -0500 To: "Antony Dovgal" Cc: "Arnold Daniels" , internals@lists.php.net In-Reply-To: <455527D3.6050606@zend.com> MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <455523C4.70106@adaniels.nl> <455527D3.6050606@zend.com> Subject: Re: [PHP-DEV] strange php_stream_from_zval requires return_value From: kingwez@gmail.com ("Wez Furlong") You probably want php_stream_from_zval_no_verify which doesn't auto-return if there is an invalid stream passed in. --Wez. On 11/10/06, Antony Dovgal wrote: > On 11/11/2006 04:13 AM, Arnold Daniels wrote: > > Hi, > > > > I've noticed that building an extension will fail when using macro > > php_stream_from_zval and there is not return_value variable within the > > scope. > > Well, looks like it's time to install cscope or ctags and use it to see which code actually stands behind a particular macro. > ---- > #define php_stream_from_zval(xstr, ppzval) ZEND_FETCH_RESOURCE2((xstr), php_stream *, (ppzval), -1, "stream", php_file_le_stream(), php_file_le_pstream()) > > #define ZEND_FETCH_RESOURCE2(rsrc, rsrc_type, passed_id, default_id, resource_type_name, resource_type1, resource_type2) \ > rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 2, resource_type1, resource_type2); \ > ZEND_VERIFY_RESOURCE(rsrc); > > #define ZEND_VERIFY_RESOURCE(rsrc) \ > if (!rsrc) { \ > RETURN_FALSE; \ <------------ nb > } > ---- > > Obviously this macro is not what you need. > I guess you need zend_fetch_resource(), which is the function actually used in ZEND_FETCH_RESOURCE2(). > > -- > Wbr, > Antony Dovgal > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php > >