From: Michael Wallner Date: Mon, 17 Nov 2014 11:17:33 +0000 (+0100) Subject: fix leak X-Git-Tag: release-2.0.0RC1~26 X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-propro;a=commitdiff_plain;h=4aebb712b3a5e60aa8858f985c58d3b3745f91e1 fix leak --- diff --git a/php_propro.c b/php_propro.c index e78a6f8..8d96e94 100644 --- a/php_propro.c +++ b/php_propro.c @@ -20,7 +20,7 @@ #include "php_propro.h" -#define DEBUG_PROPRO 1 +#define DEBUG_PROPRO 0 static inline zval *get_referenced_zval(zval *ref) { @@ -456,8 +456,11 @@ static void write_dimension(zval *object, zval *offset, zval *value TSRMLS_DC) get_proxied_value(object, &proxied_value TSRMLS_CC); if (!Z_ISUNDEF(proxied_value)) { - convert_to_array(&proxied_value); - Z_ADDREF(proxied_value); + if (Z_TYPE(proxied_value) == IS_ARRAY) { + Z_ADDREF(proxied_value); + } else { + convert_to_array(&proxied_value); + } } else { array_init(&proxied_value); }