From 40bb7344525b76d0de051cd59f0f6b6436bd53a4 Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Thu, 1 Apr 2004 10:47:44 +0000 Subject: Some small improvments, support for new style constructors, support for exceptions other then SoapFault --- ext/soap/php_packet_soap.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'ext/soap/php_packet_soap.c') diff --git a/ext/soap/php_packet_soap.c b/ext/soap/php_packet_soap.c index f29193dbd1..2fb8816a8c 100644 --- a/ext/soap/php_packet_soap.c +++ b/ext/soap/php_packet_soap.c @@ -332,11 +332,14 @@ int parse_packet_soap(zval *this_ptr, char *buffer, int buffer_size, sdlFunction zval_dtor(return_value); ZVAL_NULL(return_value); } else if (param_count == 1) { - zval *tmp = *(zval**)Z_ARRVAL_P(return_value)->pListHead->pData; - tmp->refcount++; + zval **tmp; + + zend_hash_internal_pointer_reset(Z_ARRVAL_P(return_value)); + zend_hash_get_current_data(Z_ARRVAL_P(return_value), (void**)&tmp); + (*tmp)->refcount++; zval_dtor(return_value); - *return_value = *tmp; - FREE_ZVAL(tmp); + *return_value = **tmp; + FREE_ZVAL(*tmp); } } -- cgit v1.2.1