diff options
author | Brad King <brad.king@kitware.com> | 2014-07-28 14:35:44 (GMT) |
---|---|---|
committer | CMake Topic Stage <kwrobot@kitware.com> | 2014-07-28 14:35:44 (GMT) |
commit | 90f6de8a0192eb169be2a7e0ddbe8bce9d6714fb (patch) | |
tree | 7764c16616b94b5de1bf1fa447e22758d4cf5132 /Source | |
parent | 9303da53ce980bf71df52f3e75ed18f93127d7b9 (diff) | |
parent | 57a2df224a4bcf4463937d5e121f917d450c144f (diff) | |
download | CMake-90f6de8a0192eb169be2a7e0ddbe8bce9d6714fb.zip CMake-90f6de8a0192eb169be2a7e0ddbe8bce9d6714fb.tar.gz CMake-90f6de8a0192eb169be2a7e0ddbe8bce9d6714fb.tar.bz2 |
Merge topic 'fix_tar_leaks'
57a2df22 Fix memory leaks in extract tar.
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmSystemTools.cxx | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/cmSystemTools.cxx b/Source/cmSystemTools.cxx index 444e143..fbb4416 100644 --- a/Source/cmSystemTools.cxx +++ b/Source/cmSystemTools.cxx @@ -1701,6 +1701,8 @@ bool extract_tar(const char* outFileName, bool verbose, { cmSystemTools::Error("Problem with archive_read_open_file(): ", archive_error_string(a)); + archive_write_free(ext); + archive_read_close(a); return false; } for (;;) @@ -1776,6 +1778,7 @@ bool extract_tar(const char* outFileName, bool verbose, } } } + archive_write_free(ext); archive_read_close(a); archive_read_finish(a); return r == ARCHIVE_EOF || r == ARCHIVE_OK; |