--- AE/Installer/trunk/source/installer.cpp 2010/05/29 19:21:27 558 +++ AE/Installer/trunk/source/installer.cpp 2010/05/30 17:28:34 562 @@ -390,7 +390,6 @@ ModPackage fileToModPackage(fstream &fil const string GlobalNeeded = "GlobalNeeded"; const string Category = "Category"; const string Creator = "Creator"; - package.modStringName = modName; while (!file.eof()) { getline(file,line); @@ -492,7 +491,7 @@ ModPackage fileToModPackage(fstream &fil } } } - + package.modStringName = modName; return package; } @@ -658,13 +657,11 @@ void recompileAll(vector install vector skippedfolders; ofstream BSLlog("BSL.log"); - if(exists("../GameDataFolder/BSLBackup/")) { - remove_all("../GameDataFolder/BSLBackup/"); - } - else { + if(!exists("../GameDataFolder/BSLBackup/")) { create_directory("../GameDataFolder/BSLBackup/"); + copy("../GameDataFolder/IGMD/", "../GameDataFolder/BSLBackup/"); } - copy("../GameDataFolder/IGMD/", "../GameDataFolder/BSLBackup/"); + for ( directory_iterator dir_itr( "../GameDataFolder/IGMD/" ), end_itr; dir_itr != end_itr; ++dir_itr ) { @@ -1481,7 +1478,7 @@ bool ProcessAEUpdate(Install_info_cfg *c #ifndef WIN32 rename((path)("../" + thePath), (path)(strTrashDir + thePath)); #else - remove((path)("../" + thePath)); + remove_all((path)("../" + thePath)); #endif } } @@ -1553,6 +1550,11 @@ bool ProcessAEUpdate(Install_info_cfg *c } catch (exception & ex) { + wxMessageDialog* DotNetDialogOfDeath = + new wxMessageDialog(TheWindow, ex.what(), "AE Installer Alert", + wxICON_EXCLAMATION , wxDefaultPosition); + + DotNetDialogOfDeath->ShowModal(); setStatusArea("Warning, handled exception: " + (string)ex.what()); return false; }