From ae47cdaad8a3e3269693514ee5515b75e32f474a Mon Sep 17 00:00:00 2001 From: Raul Tambre Date: Sat, 23 Aug 2014 10:30:26 +0300 Subject: [PATCH] Fix overwriting, when installing PKG files Now properly removes the directory and tries to continue installation. --- rpcs3/Loader/PKG.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/rpcs3/Loader/PKG.cpp b/rpcs3/Loader/PKG.cpp index c07e43a5fa..2282c7541b 100644 --- a/rpcs3/Loader/PKG.cpp +++ b/rpcs3/Loader/PKG.cpp @@ -25,17 +25,16 @@ bool PKGLoader::Install(std::string dest) std::string titleID = std::string(title_id).substr(7, 9); - if (rExists(dest+titleID)) { + if (rExists(dest + titleID)) { rMessageDialog d_overwrite(NULL, "Another installation was found. Do you want to overwrite it?", "PKG Decrypter / Installer", rYES_NO|rCENTRE); if (d_overwrite.ShowModal() != rID_YES) { LOG_ERROR(LOADER, "PKG Loader: Another installation found in: %s", titleID.c_str()); return false; } - // TODO: Remove the following two lines and remove the folder dest+titleID - LOG_ERROR(LOADER, "PKG Loader: Another installation found in: %s", titleID.c_str()); - return false; + + rRmdir(dest + titleID); } - if (!rMkdir(dest+titleID)) { + if (!rMkdir(dest + titleID)) { LOG_ERROR(LOADER, "PKG Loader: Could not make the installation directory: %s", titleID.c_str()); return false; }