From d0c23bf03bb8c39205ccc814df769cebc6ca2a8a Mon Sep 17 00:00:00 2001 From: Antony Dovgal Date: Mon, 5 Oct 2015 12:37:04 +0300 Subject: [PATCH] fix array keys being too strict to refs and add tests --- Zend/zend_operators.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index f8c155d2d2..987d055f9e 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -731,6 +731,8 @@ static zend_always_inline int fast_equal_check_string(zval *op1, zval *op2) static zend_always_inline int fast_is_identical_function(zval *op1, zval *op2) { + ZVAL_DEREF(op1); + ZVAL_DEREF(op2); if (Z_TYPE_P(op1) != Z_TYPE_P(op2)) { return 0; } else if (Z_TYPE_P(op1) <= IS_TRUE) { @@ -741,6 +743,8 @@ static zend_always_inline int fast_is_identical_function(zval *op1, zval *op2) static zend_always_inline int fast_is_not_identical_function(zval *op1, zval *op2) { + ZVAL_DEREF(op1); + ZVAL_DEREF(op2); if (Z_TYPE_P(op1) != Z_TYPE_P(op2)) { return 1; } else if (Z_TYPE_P(op1) <= IS_TRUE) { -- 2.40.0