--- AE/Installer/trunk/source/installer.cpp 2010/03/14 23:31:14 500 +++ AE/Installer/trunk/source/installer.cpp 2010/03/22 16:51:50 502 @@ -342,7 +342,14 @@ vector getPackages(string pa { package = fileToModPackage(file); if (package.installerVersion.compare(INSTALLER_VERSION) < 1) // if mod requires newer version of the Installer, we won't add it to the list - packages.push_back(package); + { +#ifdef WIN32 + if (!package.platform.compare("Windows") || !package.platform.compare("Both")) // don't show package if it's not for the right OS +#else + if (!package.platform.compare("Macintosh") || !package.platform.compare("Both")) +#endif + packages.push_back(package); + } } file.close(); file.clear(); @@ -373,6 +380,7 @@ ModPackage fileToModPackage(fstream &fil static string NameOfMod = "NameOfMod"; static string ARROW = "->"; static string ModString = "ModString"; + static string Platform = "Platform"; static string HasOnis = "HasOnis"; static string HasDeltas = "HasDeltas"; static string HasBSL = "HasBSL"; @@ -412,6 +420,11 @@ ModPackage fileToModPackage(fstream &fil iter++; package.modStringVersion = atoi((*iter).c_str()); } + else if (!Platform.compare(*iter)) + { + iter++; iter++; + package.platform = *iter; + } else if (!HasOnis.compare(*iter)) { iter++; iter++; @@ -1613,6 +1626,7 @@ ModPackage::ModPackage() name = ""; modStringName = ""; modStringVersion = 0; + platform = "Both"; hasOnis = false; hasDeltas = false; hasBSL = false;