summaryrefslogtreecommitdiff
path: root/ext/standard/array.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/array.c')
-rw-r--r--ext/standard/array.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/standard/array.c b/ext/standard/array.c
index 6b8798d0eb..21c7db4e6f 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -1414,6 +1414,8 @@ PHP_FUNCTION(array_fill)
convert_to_long_ex(num);
i = Z_LVAL_PP(num) - 1;
if (i < 0) {
+ zend_hash_destroy(Z_ARRVAL_P(return_value));
+ efree(Z_ARRVAL_P(return_value));
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Number of elements must be positive");
RETURN_FALSE;
}