From: Antony Dovgal Date: Mon, 19 Jan 2009 14:41:52 +0000 (+0000) Subject: MFH: fix memleaks in sscanf() X-Git-Tag: php-5.2.9RC1~86 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=910107f3f41eee7454ac52708d452a093958871a;p=php MFH: fix memleaks in sscanf() --- diff --git a/ext/standard/scanf.c b/ext/standard/scanf.c index 2c49090a06..65030e98f6 100644 --- a/ext/standard/scanf.c +++ b/ext/standard/scanf.c @@ -1066,9 +1066,9 @@ addToInt: break; } else if (numVars) { /* change passed value type to string */ - current = args[objIndex++]; - convert_to_string( *current ); - ZVAL_STRING( *current, buf, 1 ); + current = args[objIndex++]; + zval_dtor(*current); + ZVAL_STRING( *current, buf, 1 ); } else { add_index_string(*return_value, objIndex++, buf, 1); } @@ -1077,7 +1077,7 @@ addToInt: break; } else if (numVars) { current = args[objIndex++]; - convert_to_long( *current ); + zval_dtor(*current); Z_LVAL(**current) = value; } else { add_index_long(*return_value, objIndex++, value); @@ -1182,7 +1182,7 @@ addToFloat: break; } else if (numVars) { current = args[objIndex++]; - convert_to_double( *current ); + zval_dtor(*current); Z_DVAL_PP( current ) = dvalue; } else { add_index_double( *return_value, objIndex++, dvalue );