1
0
mirror of https://github.com/php/php-src.git synced 2026-04-05 07:02:33 +02:00

fix memory leak

the value shouldn't be ref, use z_add_ref is enough
This commit is contained in:
Xinchen Hui
2013-03-21 10:56:30 +08:00
parent 45b1d014f2
commit d99c14b1a6

View File

@@ -1246,7 +1246,6 @@ SPL_METHOD(SplDoublyLinkedList, add)
if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zz", &zindex, &value) == FAILURE) {
return;
}
SEPARATE_ARG_IF_REF(value);
intern = (spl_dllist_object*)zend_object_store_get_object(getThis() TSRMLS_CC);
index = spl_offset_convert_to_long(zindex TSRMLS_CC);
@@ -1256,6 +1255,7 @@ SPL_METHOD(SplDoublyLinkedList, add)
return;
}
Z_ADDREF_P(value);
if (index == intern->llist->count) {
/* If index is the last entry+1 then we do a push because we're not inserting before any entry */
spl_ptr_llist_push(intern->llist, value TSRMLS_CC);