diff options
author | Andreas Haas <liu.gam3@gmail.com> | 2017-04-06 13:18:41 +0200 |
---|---|---|
committer | Andreas Haas <liu.gam3@gmail.com> | 2017-04-06 13:43:13 +0200 |
commit | a2734df7edb244e92006be47f4bfb9f96115b277 (patch) | |
tree | 2b28a85bc81c5428d7d4c80ba5818f59b4874425 /core/io | |
parent | 46bc14e66fe90430f1d74cdab6cca6acb5b2a3f6 (diff) |
Core: fix possible memory leaks.
Diffstat (limited to 'core/io')
-rw-r--r-- | core/io/file_access_zip.cpp | 3 | ||||
-rw-r--r-- | core/io/pck_packer.cpp | 1 |
2 files changed, 2 insertions, 2 deletions
diff --git a/core/io/file_access_zip.cpp b/core/io/file_access_zip.cpp index 4cc2edd1c3..47432b1e97 100644 --- a/core/io/file_access_zip.cpp +++ b/core/io/file_access_zip.cpp @@ -149,8 +149,7 @@ unzFile ZipArchive::get_file_handle(String p_file) const { unzFile pkg = unzOpen2(packages[file.package].filename.utf8().get_data(), &io); ERR_FAIL_COND_V(!pkg, NULL); int unz_err = unzGoToFilePos(pkg, &file.file_pos); - ERR_FAIL_COND_V(unz_err != UNZ_OK, NULL); - if (unzOpenCurrentFile(pkg) != UNZ_OK) { + if (unz_err != UNZ_OK || unzOpenCurrentFile(pkg) != UNZ_OK) { unzClose(pkg); ERR_FAIL_V(NULL); diff --git a/core/io/pck_packer.cpp b/core/io/pck_packer.cpp index 9dd9b044a2..974ed64267 100644 --- a/core/io/pck_packer.cpp +++ b/core/io/pck_packer.cpp @@ -172,6 +172,7 @@ Error PCKPacker::flush(bool p_verbose) { printf("\n"); file->close(); + memdelete(buf); return OK; }; |