summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorRĂ©mi Verschelde <rverschelde@gmail.com>2017-04-06 14:34:21 +0200
committerGitHub <noreply@github.com>2017-04-06 14:34:21 +0200
commit1a33d5e06fa941d1acf219ef865dfb0425f302dd (patch)
tree82610c598b98bcd39b912fa71c24419b8ad5802c /core
parent243849583a5c0a8564aa33b509a43827f818750c (diff)
parenta2734df7edb244e92006be47f4bfb9f96115b277 (diff)
Merge pull request #8286 from Hinsbart/memleaks
Core: fix possible memory leaks.
Diffstat (limited to 'core')
-rw-r--r--core/io/file_access_zip.cpp3
-rw-r--r--core/io/pck_packer.cpp1
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;
};