- added more error checking in mod menu when retrieving masterserver data

This commit is contained in:
Mark Vejvoda 2011-04-04 17:03:07 +00:00
parent 6a35db6031
commit e9ef00a213
1 changed files with 33 additions and 3 deletions

View File

@ -277,11 +277,18 @@ void MenuStateMods::simpleTask(BaseThread *callingThread) {
return;
}
if(curlResult != CURLE_OK) {
string curlError = curl_easy_strerror(curlResult);
char szBuf[1024]="";
sprintf(szBuf,lang.get("ModErrorGettingServerData").c_str(),curlError.c_str());
console.addLine(string("#1 ") + szBuf,true);
}
if(curlResult == CURLE_OK ||
(curlResult != CURLE_COULDNT_RESOLVE_HOST &&
curlResult != CURLE_COULDNT_CONNECT)) {
tilesetsMetaData = SystemFlags::getHTTP(baseURL + "showTilesetsForGlest.php",handle);
tilesetsMetaData = SystemFlags::getHTTP(baseURL + "showTilesetsForGlest.php",handle,-1,&curlResult);
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("tilesetsMetaData [%s]\n",tilesetsMetaData.c_str());
if(callingThread->getQuitStatus() == true || safeMutexThreadOwner.isValidMutex() == false) {
@ -289,7 +296,14 @@ void MenuStateMods::simpleTask(BaseThread *callingThread) {
return;
}
mapsMetaData = SystemFlags::getHTTP(baseURL + "showMapsForGlest.php",handle);
if(curlResult != CURLE_OK) {
string curlError = curl_easy_strerror(curlResult);
char szBuf[1024]="";
sprintf(szBuf,lang.get("ModErrorGettingServerData").c_str(),curlError.c_str());
console.addLine(string("#2 ") + szBuf,true);
}
mapsMetaData = SystemFlags::getHTTP(baseURL + "showMapsForGlest.php",handle,-1,&curlResult);
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("mapsMetaData [%s]\n",mapsMetaData.c_str());
if(callingThread->getQuitStatus() == true || safeMutexThreadOwner.isValidMutex() == false) {
@ -297,12 +311,28 @@ void MenuStateMods::simpleTask(BaseThread *callingThread) {
return;
}
scenariosMetaData = SystemFlags::getHTTP(baseURL + "showScenariosForGlest.php",handle);
if(curlResult != CURLE_OK) {
string curlError = curl_easy_strerror(curlResult);
char szBuf[1024]="";
sprintf(szBuf,lang.get("ModErrorGettingServerData").c_str(),curlError.c_str());
console.addLine(string("#3 ") + szBuf,true);
}
scenariosMetaData = SystemFlags::getHTTP(baseURL + "showScenariosForGlest.php",handle,-1,&curlResult);
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("scenariosMetaData [%s]\n",scenariosMetaData.c_str());
if(curlResult != CURLE_OK) {
string curlError = curl_easy_strerror(curlResult);
char szBuf[1024]="";
sprintf(szBuf,lang.get("ModErrorGettingServerData").c_str(),curlError.c_str());
console.addLine(string("#4 ") + szBuf,true);
}
}
SystemFlags::cleanupHTTP(&handle);
}
else {
console.addLine(lang.get("MasterServerMissing"),true);
}
if(SystemFlags::VERBOSE_MODE_ENABLED) printf("In [%s::%s Line %d]\n",__FILE__,__FUNCTION__,__LINE__);