Jeck - Fixed zipfile loading on PSP.

This commit is contained in:
wagic.jeck
2009-09-05 07:14:01 +00:00
parent 681122f018
commit bf42825be8
+15 -10
View File
@@ -750,14 +750,16 @@ string WResourceManager::cardFile(const string filename, const string setname, c
return defdir; return defdir;
//Failure. Assume it's in a zip file? //Failure. Assume it's in a zip file?
char zipname[100]; if(setname.size()){
sprintf(zipname, "Res/sets/%s/%s.zip", setname.c_str(),setname.c_str()); char zipname[100];
if (fileOK(zipname,false)){ sprintf(zipname, "Res/sets/%s/%s.zip", setname.c_str(),setname.c_str());
fs->AttachZipFile(zipname); if (fileOK(zipname)){
return filename; fs->AttachZipFile(zipname);
} return filename;
}
}
//Complete abject failure. Probably a crash... //Complete failure.
return ""; return "";
} }
@@ -842,13 +844,16 @@ string WResourceManager::sfxFile(const string filename, const string specific){
int WResourceManager::fileOK(string filename, bool relative){ int WResourceManager::fileOK(string filename, bool relative){
char fname[512]; char fname[512];
std::ifstream * fp = NULL;
if(relative){ if(relative){
sprintf(fname,RESPATH"/%s",filename.c_str()); sprintf(fname,RESPATH"/%s",filename.c_str());
fp = NEW std::ifstream(fname);
} }
else
fp = NEW std::ifstream(filename.c_str());
std::ifstream fichier(fname); if(fp && *fp){
if(fichier){ fp->close();
fichier.close();
return 1; return 1;
} }