From 6aad56d4a224a15e7ad4fde337c7e04a9cd4863e Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Mon, 16 Feb 2004 09:56:30 +0000 Subject: fix: prevent of possible crash --- ext/soap/php_encoding.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'ext/soap/php_encoding.c') diff --git a/ext/soap/php_encoding.c b/ext/soap/php_encoding.c index 4138b5acb0..e33675125b 100644 --- a/ext/soap/php_encoding.c +++ b/ext/soap/php_encoding.c @@ -1148,13 +1148,17 @@ static xmlNodePtr to_xml_object(encodeTypePtr type, zval *data, int style, xmlNo xmlNodePtr property; zval **zprop; char *str_key; + ulong index; + int key_type; - zend_hash_get_current_key(prop, &str_key, NULL, FALSE); + key_type = zend_hash_get_current_key(prop, &str_key, &index, FALSE); zend_hash_get_current_data(prop, (void **)&zprop); property = master_to_xml(get_conversion((*zprop)->type), (*zprop), style, xmlParam); - xmlNodeSetName(property, str_key); + if (key_type == HASH_KEY_IS_STRING) { + xmlNodeSetName(property, str_key); + } zend_hash_move_forward(prop); } } -- cgit v1.2.1