From: Dmitry Stogov Date: Mon, 29 Oct 2007 14:37:11 +0000 (+0000) Subject: optimization X-Git-Tag: RELEASE_2_0_0a1~1530 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=18215d93473bacfcde56712d3603570c285c37a9;p=php optimization --- diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c index d9e34e72c8..3a19f35e0f 100644 --- a/Zend/zend_operators.c +++ b/Zend/zend_operators.c @@ -1858,21 +1858,19 @@ ZEND_API int numeric_compare_function(zval *result, zval *op1, zval *op2 TSRMLS_ static inline void zend_free_obj_get_result(zval *op) /* {{{ */ { - if (op) { - if (Z_REFCOUNT_P(op) == 0) { - zval_dtor(op); - FREE_ZVAL(op); - } else { - zval_ptr_dtor(&op); - } + if (Z_REFCOUNT_P(op) == 0) { + zval_dtor(op); + FREE_ZVAL(op); + } else { + zval_ptr_dtor(&op); } } /* }}} */ #define COMPARE_RETURN_AND_FREE(retval) \ - zend_free_obj_get_result(op1_free); \ - zend_free_obj_get_result(op2_free); \ - return retval; + if (op1_free) {zend_free_obj_get_result(op1_free);} \ + if (op2_free) {zend_free_obj_get_result(op2_free);} \ + return retval; ZEND_API int compare_function(zval *result, zval *op1, zval *op2 TSRMLS_DC) /* {{{ */ {