From: Dmitry Stogov Date: Wed, 18 Mar 2009 11:25:37 +0000 (+0000) Subject: optimization X-Git-Tag: php-5.3.0RC1~38 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=69ce7ea442c11c1751b18f21627d82ce2ffba561;p=php optimization --- diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c index ce1afff8d0..e8b579f8e2 100644 --- a/Zend/zend_operators.c +++ b/Zend/zend_operators.c @@ -1736,10 +1736,10 @@ ZEND_API int increment_function(zval *op1) case IS_STRING: { long lval; double dval; - char *strval = Z_STRVAL_P(op1); - switch (is_numeric_string(strval, Z_STRLEN_P(op1), &lval, &dval, 0)) { + switch (is_numeric_string(Z_STRVAL_P(op1), Z_STRLEN_P(op1), &lval, &dval, 0)) { case IS_LONG: + efree(Z_STRVAL_P(op1)); if (lval == LONG_MAX) { /* switch to double */ double d = (double)lval; @@ -1747,11 +1747,10 @@ ZEND_API int increment_function(zval *op1) } else { ZVAL_LONG(op1, lval+1); } - efree(strval); /* should never be empty_string */ break; case IS_DOUBLE: + efree(Z_STRVAL_P(op1)); ZVAL_DOUBLE(op1, dval+1); - efree(strval); /* should never be empty_string */ break; default: /* Perl style string increment */