From a85ef9c48240888930020b1b84a199706c3a9833 Mon Sep 17 00:00:00 2001 From: Sangyoon Jang Date: Fri, 6 Jan 2017 13:58:19 +0900 Subject: [PATCH] Remove tmpdir when failed to getting icon info Change-Id: I809ef4c74ef15e2f87361b0020686b327e79519f Signed-off-by: Sangyoon Jang --- src/lib/tpk_archive_info.cc | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/lib/tpk_archive_info.cc b/src/lib/tpk_archive_info.cc index c34fab8..3b5a591 100644 --- a/src/lib/tpk_archive_info.cc +++ b/src/lib/tpk_archive_info.cc @@ -309,10 +309,14 @@ bool TpkArchiveInfo::GetArchiveInfo(const char* file_path, std::string icon = GetIconInfo(parser, locale); if (!icon.empty()) { bf::path icon_path = bf::path(kSharedResDir) / icon; - if (!ExtractPackageArchive(file_path, icon_path.string().c_str(), tmp_dir)) + if (!ExtractPackageArchive( + file_path, icon_path.string().c_str(), tmp_dir)) { + bf::remove_all(tmp_dir); return false; + } if (!ReadIcon(icon_path, tmp_dir, info)) { LOG(WARNING) << "Failed to get icon info"; + bf::remove_all(tmp_dir); return false; } } -- 2.7.4