summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
Diffstat (limited to 'ext')
-rw-r--r--ext/standard/array.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c
index a8cea5483a..f13aef92c6 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -1911,6 +1911,7 @@ PHP_FUNCTION(array_push)
Z_ADDREF_P(new_var);
if (zend_hash_next_index_insert(Z_ARRVAL_P(stack), &new_var, sizeof(zval *), NULL) == FAILURE) {
+ Z_DELREF_P(new_var);
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Cannot add element to the array as the next element is already occupied");
efree(args);
RETURN_FALSE;