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
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;
--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php