Changeset 508 for AE/Installer


Ignore:
Timestamp:
Apr 24, 2010, 7:52:34 PM (15 years ago)
Author:
gumby
Message:

fix?

File:
1 edited

Legend:

Unmodified
Added
Removed
  • AE/Installer/trunk/source/installer.cpp

    r507 r508  
    10051005                                }
    10061006                        }
    1007                         else
    1008                         {
    1009                                 file.close();
    1010                                 continue;
    1011                         }
    1012                         file.close();
    1013                                                
    1014                         file.open( ("packages" + install_iter->path().filename() + "/Mod_Info.cfg").c_str());
    1015                         if (!file.fail())
    1016                         {
    1017                                 ModPackage installedPackage = fileToModPackage(file, install_iter->path().filename());
    1018                         }
    1019                         else
    1020                         {
    1021                                 file.close();
    1022                                 return UPDATE_THIRD_PARTY;
    1023                         }
    1024                         file.close();
    1025                         if(((string)INSTALLER_VERSION).compare(updatePackage.installerVersion) < 1 && updatePackage.modStringVersion > installedPackage.modStringVersion) {
    1026                                 return UPDATE_THIRD_PARTY;
    1027                         }
    10281007                }
    10291008        }
     
    10451024        string strOniSplitVersion = "OniSplit_Version";
    10461025        string strGUIWinVersion = "GUI_Win_Version";
    1047         string strGUIMacVersion = "GUI_Mac_Version";
     1026        string strGUIMacVersion = "GUI_Mac_Version"; 
    10481027        string strReglobalize = "Reglobalize";
    10491028        string strDeleteList = "Delete_List";
     
    12861265        return true; // returning 'true' tells the Installer to quit itself ASAP so it can be replaced by the process that is now running
    12871266}
    1288 
    1289 
    1290 void CrawlPackages(string pathToUpdate, string strPathToPackages) {
    1291         try{
    1292                 directory_iterator end;
    1293                 for ( directory_iterator update_iter( pathToUpdate );
    1294                         update_iter != end;
    1295                         ++update_iter )
    1296                 {
    1297 
    1298                         ModPackage installedPackage, updatePackage;
    1299                         string updateStr = update_iter->path().string() + "/Mod_Info.cfg";
    1300                         if ( !boost::iequals(update_iter->path().filename(),"Edition")
    1301                                 && !boost::iequals(update_iter->path().filename(),"Edition-patch")
    1302                                 && is_directory( update_iter->path() )
    1303                                 && exists( update_iter->path().string() + "/Mod_Info.cfg" ) )
    1304                         {
    1305                                 bool update = 0;
    1306                                 fstream file;
    1307                                 file.open( (update_iter->path().string() + "/Mod_Info.cfg").c_str());   
    1308                                 if (!file.fail())
    1309                                 {
    1310                                         updatePackage = fileToModPackage(file, update_iter->path().filename());
    1311                                 }
    1312                                 else
    1313                                 {
    1314                                         file.close();
    1315                                         continue;
    1316                                 }
    1317                                 file.close();
    1318                                 file.clear();
    1319                                 if(exists(strPathToPackages + "/" + update_iter->path().filename() + "/Mod_Info.cfg"))
    1320                                 {
    1321                                 file.open((strPathToPackages + "/" + update_iter->path().filename() + "/Mod_Info.cfg").c_str());
    1322                                 if (!file.fail())
    1323                                 {
    1324                                         installedPackage = fileToModPackage(file, update_iter->path().filename());
    1325                                         file.close();
    1326                                         if(updatePackage.modStringVersion > installedPackage.modStringVersion) {
    1327                                                 update = 1;
    1328                                         }
    1329                                 }
    1330                                 else
    1331                                 {
    1332                                         file.close();
    1333                                         update = 1;
    1334                                 }
    1335                                 file.close();
    1336                                 }
    1337                                 else update = 1;
    1338                                 if(update) {
    1339                                         if(exists((path)(strPathToPackages +  "/" + updatePackage.modStringName)))
    1340                                                 remove_all((path)(strPathToPackages +  "/" + updatePackage.modStringName));                     
    1341                                         rename((path)(pathToUpdate + "/" + updatePackage.modStringName), (path)(strPathToPackages + "/" + updatePackage.modStringName));
    1342 
    1343                                 }
    1344                         }
    1345                 }
    1346         }
    1347         catch (exception & ex) {
    1348                 //      ex.what();
    1349                 setStatusArea("Warning, handled exception: " + (string)ex.what());
    1350         }
    1351 }
    1352 
    1353 
    1354 bool ProcessThirdPartyUpdates() {
    1355 CrawlPackages( "../updates",  "./packages");
    1356 return true;
    1357         //      globalPackages = getPackages();
    1358 //      refreshMods(globalInstalledMods);
    1359 }
    1360 
    13611267
    13621268bool ProcessAEUpdate(Install_info_cfg *currentAE, Install_info_cfg *updateAE, bool *installerJustUpdated)
Note: See TracChangeset for help on using the changeset viewer.