diff options
author | Felipe Pena <felipensp@gmail.com> | 2013-10-20 01:05:00 -0200 |
---|---|---|
committer | Felipe Pena <felipensp@gmail.com> | 2013-10-20 01:05:00 -0200 |
commit | 8d22c231617cafba3a34a490036cccb31a393d70 (patch) | |
tree | b9b0c8642db1951f391fb6a9ea430cd57b6e381a /ext/zip/php_zip.c | |
parent | 0b5c2887cdf2d9c8d9c466de88d898c30cea2d38 (diff) | |
parent | 420068c6e1806a2b12be481abba1afec5d73d82e (diff) | |
download | php-git-8d22c231617cafba3a34a490036cccb31a393d70.tar.gz |
Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
- Fix possible memory leak
Diffstat (limited to 'ext/zip/php_zip.c')
-rw-r--r-- | ext/zip/php_zip.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/ext/zip/php_zip.c b/ext/zip/php_zip.c index 7297523aaa..a9f977c9fd 100644 --- a/ext/zip/php_zip.c +++ b/ext/zip/php_zip.c @@ -1856,15 +1856,16 @@ static ZIPARCHIVE_METHOD(addFromString) /* TODO: fix _zip_replace */ if (cur_idx >= 0) { if (zip_delete(intern, cur_idx) == -1) { - RETURN_FALSE; + goto fail; } } - if (zip_add(intern, name, zs) == -1) { - RETURN_FALSE; - } else { + if (zip_add(intern, name, zs) != -1) { RETURN_TRUE; } +fail: + zip_source_free(zs); + RETURN_FALSE; } /* }}} */ |