From e8e9b2afee32e27873be715cbbc45674ccbb8d91 Mon Sep 17 00:00:00 2001 From: Zeev Suraski Date: Tue, 10 Feb 2004 09:30:38 +0000 Subject: [PATCH] Implement get callback for SimpleXML (it now supports pre/post increment as well as binary-assign-ops) --- ext/simplexml/simplexml.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/ext/simplexml/simplexml.c b/ext/simplexml/simplexml.c index b7735f80b1..7749013ff3 100644 --- a/ext/simplexml/simplexml.c +++ b/ext/simplexml/simplexml.c @@ -1013,6 +1013,21 @@ sxe_object_cast(zval *readobj, zval *writeobj, int type, int should_free TSRMLS_ } /* }}} */ +static zval *sxe_get_value(zval *z TSRMLS_DC) +{ + zval *retval; + + MAKE_STD_ZVAL(retval); + + if (sxe_object_cast(z, retval, IS_STRING, 0 TSRMLS_CC)==FAILURE) { + zend_error(E_ERROR, "Unable to cast node to string"); + } + + retval->refcount = 0; + return retval; +} + + static zend_object_handlers sxe_object_handlers = { ZEND_OBJECTS_STORE_HANDLERS, sxe_property_read, @@ -1020,7 +1035,7 @@ static zend_object_handlers sxe_object_handlers = { sxe_dimension_read, sxe_dimension_write, NULL, - NULL, + sxe_get_value, /* get */ NULL, sxe_property_exists, sxe_property_delete, -- 2.40.0