| 975 | 
   | 
                                 ModPackage installedPackage, updatePackage; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 976 | 
   | 
                                 if (is_directory(install_iter->path()) && exists(install_iter->path().string() + "/Mod_Info.cfg")) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 977 | 
   | 
                                 { | 
 
 
 
 
 
 
 
 
 | 978 | 
 + | 
                                         string blah =install_iter->path().string() + "/Mod_Info.cfg"; | 
 
 
 
 
 
 
 
 
 | 979 | 
 + | 
                                         string blah2 = "packages/" + install_iter->path().filename() + "/Mod_Info.cfg"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 980 | 
   | 
                                         fstream file; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 981 | 
   | 
                                         file.open((install_iter->path().string() + "/Mod_Info.cfg").c_str()); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 982 | 
   | 
                                         if (!file.fail()) | 
 
 
 
 
 
 
 
 
 
 
 
 | 983 | 
 < | 
                                                 ModPackage updatePackage = fileToModPackage(file, install_iter->path().filename()); | 
 
 
 
 
 
 
 
 
 
 | 983 | 
 > | 
                                                 updatePackage = fileToModPackage(file, install_iter->path().filename()); | 
 
 
 
 
 
 
 
 
 
 
 
 | 984 | 
   | 
                                         else | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 985 | 
   | 
                                         { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 986 | 
   | 
                                                 file.close(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 987 | 
   | 
                                                 continue; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 988 | 
   | 
                                         } | 
 
 
 
 
 
 
 
 
 
 
 
 | 989 | 
 < | 
                                         if (exists("packages" + install_iter->path().filename() + "/Mod_Info.cfg")) | 
 
 
 
 
 
 
 
 
 
 | 989 | 
 > | 
                                         if (exists("packages/" + install_iter->path().filename() + "/Mod_Info.cfg")) | 
 
 
 
 
 
 
 
 
 
 
 
 | 990 | 
   | 
                                         { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 991 | 
   | 
                                                 file.close(); | 
 
 
 
 
 
 
 
 
 
 
 
 | 992 | 
 < | 
                                                 file.open(("packages" + install_iter->path().filename() + "/Mod_Info.cfg").c_str()); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 992 | 
 > | 
                                                 file.clear(); | 
 
 
 
 
 
 | 993 | 
 > | 
                                                 file.open(("packages/" + install_iter->path().filename() + "/Mod_Info.cfg").c_str()); | 
 
 
 
 
 
 
 
 
 
 
 
 | 994 | 
   | 
                                                 if (!file.fail()) | 
 
 
 
 
 
 
 
 
 
 
 
 | 995 | 
 < | 
                                                         ModPackage installedPackage = fileToModPackage(file, install_iter->path().filename()); | 
 
 
 
 
 
 
 
 
 
 | 995 | 
 > | 
                                                         installedPackage = fileToModPackage(file, install_iter->path().filename()); | 
 
 
 
 
 
 
 
 
 
 
 
 | 996 | 
   | 
                                                 file.close(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 997 | 
   | 
                                                 if (updatePackage.modStringVersion > installedPackage.modStringVersion) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 998 | 
   | 
                                                 { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1492 | 
   | 
  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1493 | 
   | 
         return true; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1494 | 
   | 
 } | 
 
 
 
 
 
 
 
 
 
 
 
 | 1495 | 
 < | 
  | 
 
 
 
 
 
 
 
 
 
 | 1495 | 
 > | 
 extern MainWindow* TheWindow; | 
 
 
 
 
 
 
 
 
 
 
 
 | 1496 | 
   | 
 void ProcessPackageUpdates(string pathToUpdate, string strPathToPackages) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1497 | 
   | 
 { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1498 | 
   | 
         ptime startTime(second_clock::local_time()); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1543 | 
   | 
                                         if (!file.fail()) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1544 | 
   | 
                                         { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1545 | 
   | 
                                                 installedPackage = fileToModPackage(file, updtFolder); | 
 
 
 
 
 
 
 
 
 
 
 
 | 1546 | 
 < | 
                                                 file.close(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1547 | 
 < | 
                                                 if (updatePackage.modStringVersion > installedPackage.modStringVersion) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1548 | 
 < | 
                                                 { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1549 | 
 < | 
                                                         if (updatePackage.installerVersion <= INSTALLER_VERSION) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1550 | 
 < | 
                                                         { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1546 | 
 > | 
                                         } | 
 
 
 
 
 
 | 1547 | 
 > | 
                                         file.close(); | 
 
 
 
 
 
 | 1548 | 
 > | 
                                 } | 
 
 
 
 
 
 | 1549 | 
 > | 
                                 file.close(); | 
 
 
 
 
 
 | 1550 | 
 > | 
                                 if (updatePackage.modStringVersion > installedPackage.modStringVersion) | 
 
 
 
 
 
 | 1551 | 
 > | 
                                 { | 
 
 
 
 
 
 | 1552 | 
 > | 
                                         if (updatePackage.installerVersion <= INSTALLER_VERSION) | 
 
 
 
 
 
 | 1553 | 
 > | 
                                         { | 
 
 
 
 
 
 | 1554 | 
 > | 
                                                 if(exists(strPathToPackages +  "/" + updatePackage.modStringName)) { | 
 
 
 
 
 
 
 
 
 
 
 
 | 1555 | 
   | 
 #ifdef WIN32 | 
 
 
 
 
 
 
 
 
 
 
 
 | 1556 | 
 < | 
                                                                 remove_all((path)(strPathToPackages +  "/" + installedPackage.modStringName)); | 
 
 
 
 
 
 
 
 
 
 | 1556 | 
 > | 
                                                         remove_all((path)(strPathToPackages +  "/" + updatePackage.modStringName)); | 
 
 
 
 
 
 
 
 
 
 
 
 | 1557 | 
   | 
 #else | 
 
 
 
 
 
 
 
 
 
 
 
 | 1558 | 
 < | 
                                                                 if (needNewTrashDir) | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1559 | 
 < | 
                                                                 { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1560 | 
 < | 
                                                                         strTrashDir = strTrashDir + "Old_packages_" + boost::lexical_cast<string>(tmStartTime.tm_hour) + "-" + | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1561 | 
 < | 
                                                                                                   boost::lexical_cast<string>(tmStartTime.tm_min) + "-" + boost::lexical_cast<string>(tmStartTime.tm_sec) + "/"; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1562 | 
 < | 
                                                                         create_directory(strTrashDir); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1563 | 
 < | 
                                                                         needNewTrashDir = false; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1557 | 
 < | 
                                                                 } | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1558 | 
 < | 
                                                                 rename((path)(strPathToPackages +  "/" + installedPackage.modStringName), (path)(strTrashDir + installedPackage.modStringName)); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1559 | 
 < | 
 #endif | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1560 | 
 < | 
                                                                 rename((path)(pathToUpdate + "/" + updatePackage.modStringName), (path)(strPathToPackages + "/" + updatePackage.modStringName)); | 
 
 
 
 
 
 
 
 
 
 | 1558 | 
 > | 
                                                         if (needNewTrashDir) | 
 
 
 
 
 
 | 1559 | 
 > | 
                                                         { | 
 
 
 
 
 
 | 1560 | 
 > | 
                                                                 strTrashDir = strTrashDir + "Old_packages_" + boost::lexical_cast<string>(tmStartTime.tm_hour) + "-" + | 
 
 
 
 
 
 | 1561 | 
 > | 
                                                                         boost::lexical_cast<string>(tmStartTime.tm_min) + "-" + boost::lexical_cast<string>(tmStartTime.tm_sec) + "/"; | 
 
 
 
 
 
 | 1562 | 
 > | 
                                                                 create_directory(strTrashDir); | 
 
 
 
 
 
 | 1563 | 
 > | 
                                                                 needNewTrashDir = false; | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1564 | 
   | 
                                                         } | 
 
 
 
 
 
 
 
 
 | 1565 | 
 + | 
                                                         rename((path)(strPathToPackages +  "/" + updatePackage.modStringName), (path)(strTrashDir + updatePackage.modStringName)); | 
 
 
 
 
 
 
 
 
 | 1566 | 
 + | 
 #endif | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1567 | 
   | 
                                                 } | 
 
 
 
 
 
 
 
 
 | 1568 | 
 + | 
                                                 rename((path)(pathToUpdate + "/" + updatePackage.modStringName), (path)(strPathToPackages + "/" + updatePackage.modStringName)); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1569 | 
   | 
                                         } | 
 
 
 
 
 
 
 
 
 
 | 1564 | 
 – | 
                                         else | 
 
 
 
 
 
 
 
 
 
 | 1565 | 
 – | 
                                                 file.close(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1570 | 
   | 
                                 } | 
 
 
 
 
 
 
 
 
 
 | 1567 | 
 – | 
                                 file.close(); | 
 
 
 
 
 
 
 
 
 
 | 1568 | 
 – | 
                                 file.clear(); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1571 | 
   | 
                         } | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1572 | 
   | 
                 } | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1573 | 
   | 
         } | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1575 | 
   | 
         { | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1576 | 
   | 
                 setStatusArea("Warning, handled exception: " + (string)ex.what()); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1577 | 
   | 
         } | 
 
 
 
 
 
 
 
 
 | 1578 | 
 + | 
         wxCommandEvent e; | 
 
 
 
 
 
 
 
 
 | 1579 | 
 + | 
         TheWindow->OnRefreshButtonClick( e ); | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1580 | 
   | 
 } | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1581 | 
   | 
  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 | 1582 | 
   | 
 /* MakePathLocalToGlobalize is a function used once by ProcessAEUpdate() that takes a file in an        \ |