]> granicus.if.org Git - php/commitdiff
Use zend_long_to_str in wddx
authorNikita Popov <nikic@php.net>
Wed, 28 May 2014 16:55:51 +0000 (18:55 +0200)
committerNikita Popov <nikic@php.net>
Wed, 28 May 2014 16:55:51 +0000 (18:55 +0200)
ext/wddx/wddx.c

index 3b4357ae36b2f449c448109e1d42a8e7e65c1ba9..dc7ea834b620b4417ffda188d382faf86b8f68e8 100644 (file)
@@ -300,8 +300,7 @@ PS_SERIALIZER_DECODE_FUNC(wddx)
        if ((ret = php_wddx_deserialize_ex(val, vallen, &retval)) == SUCCESS) {
                ZEND_HASH_FOREACH_KEY_VAL(Z_ARRVAL(retval), idx, key, ent) {
                        if (key == NULL) {
-                               key = STR_ALLOC(MAX_LENGTH_OF_LONG, 0);
-                               key->len = snprintf(key->val, key->len + 1, "%ld", idx);
+                               key = zend_long_to_str(idx);
                        } else {
                                STR_ADDREF(key);
                        }
@@ -513,8 +512,7 @@ static void php_wddx_serialize_object(wddx_packet *packet, zval *obj)
                                php_wddx_serialize_var(packet, ent, tmp TSRMLS_CC);
                                STR_RELEASE(tmp);
                        } else {
-                               key = STR_ALLOC(MAX_LENGTH_OF_LONG, 0);
-                               key->len = snprintf(key->val, key->len + 1, "%ld", idx);
+                               key = zend_long_to_str(idx);
                                php_wddx_serialize_var(packet, ent, key TSRMLS_CC);
                                STR_RELEASE(key);
                        }
@@ -570,8 +568,7 @@ static void php_wddx_serialize_array(wddx_packet *packet, zval *arr)
                        if (key) {
                                php_wddx_serialize_var(packet, ent, key TSRMLS_CC);
                        } else {
-                               key = STR_ALLOC(MAX_LENGTH_OF_LONG, 0);
-                               key->len = snprintf(key->val, key->len + 1, "%ld", idx);
+                               key = zend_long_to_str(idx);
                                php_wddx_serialize_var(packet, ent, key TSRMLS_CC);
                                STR_RELEASE(key);
                        }