Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:8259 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 44579 invoked by uid 1010); 29 Feb 2004 18:07:51 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 44556 invoked from network); 29 Feb 2004 18:07:51 -0000 Received: from unknown (HELO moutng.kundenserver.de) (212.227.126.185) by pb1.pair.com with SMTP; 29 Feb 2004 18:07:51 -0000 Received: from [212.227.126.155] (helo=mrelayng.kundenserver.de) by moutng.kundenserver.de with esmtp (Exim 3.35 #1) id 1AxVLy-00018S-00 for internals@lists.php.net; Sun, 29 Feb 2004 19:07:50 +0100 Received: from [80.139.10.27] (helo=[80.139.10.27]) by mrelayng.kundenserver.de with asmtp (Exim 3.35 #1) id 1AxVLy-0002Oo-00 for internals@lists.php.net; Sun, 29 Feb 2004 19:07:50 +0100 To: internals@lists.php.net In-Reply-To: <1078074613.1440.9.camel@localhost> References: <1078074613.1440.9.camel@localhost> Content-Type: multipart/mixed; boundary="=-3wVqWDD0dFAvE+Y/QANm" Message-ID: <1078077799.1440.54.camel@localhost> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.4 Date: Sun, 29 Feb 2004 19:03:19 +0100 X-Provags-ID: kundenserver.de abuse@kundenserver.de auth:e958292ea7b1c44e51b2b9ca0a9da460 Subject: Re: [PHP-DEV] BC break: $o= new stdclass; empty($o) From: thekid@thekid.de (Timm Friebe) --=-3wVqWDD0dFAvE+Y/QANm Content-Type: text/plain Content-Transfer-Encoding: 7bit On Sun, 2004-02-29 at 18:10, Timm Friebe wrote: > Hi, [...] > Was this an intentional change? zend_execute.h, lines 95 - 98: case IS_OBJECT: /* OBJ-TBI */ result = 1; break; I have a patch, but that includes a TSRMLS_FETCH() - maybe it would be wise to change: ZEND_API int zend_is_true(zval *op); to ZEND_API int zend_is_true(zval *op TSRMLS_DC); but that breaks the API. - Timm --=-3wVqWDD0dFAvE+Y/QANm Content-Disposition: attachment; filename=zend_execute.h.diff Content-Type: text/x-patch; name=zend_execute.h.diff; charset=iso-8859-1 Content-Transfer-Encoding: 7bit Index: Zend/zend_execute.h =================================================================== RCS file: /repository/ZendEngine2/zend_execute.h,v retrieving revision 1.68 diff -u -r1.68 zend_execute.h --- Zend/zend_execute.h 12 Feb 2004 10:38:14 -0000 1.68 +++ Zend/zend_execute.h 29 Feb 2004 17:45:40 -0000 @@ -93,8 +93,12 @@ result = (zend_hash_num_elements(op->value.ht)?1:0); break; case IS_OBJECT: - /* OBJ-TBI */ - result = 1; + if (!op->value.obj.handlers->get_properties) { + result = 1; /* Unknown */ + } else { + TSRMLS_FETCH(); + result = (zend_hash_num_elements(op->value.obj.handlers->get_properties(op TSRMLS_CC)) ? 1 : 0); + } break; default: result = 0; --=-3wVqWDD0dFAvE+Y/QANm--