From: <ave...@us...> - 2003-11-15 10:21:01
|
Update of /cvsroot/gemrb/gemrb/gemrb/plugins/Core In directory sc8-pr-cvs1:/tmp/cvs-serv32532/Core Modified Files: SaveGameIterator.cpp Log Message: More bugfixes in SaveGameIterator Index: SaveGameIterator.cpp =================================================================== RCS file: /cvsroot/gemrb/gemrb/gemrb/plugins/Core/SaveGameIterator.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** SaveGameIterator.cpp 15 Nov 2003 09:41:19 -0000 1.4 --- SaveGameIterator.cpp 15 Nov 2003 10:20:55 -0000 1.5 *************** *** 152,163 **** sprintf(tmp, "%s%s%s%s%s*.bmp", core->GamePath, SaveFolder, SPathDelimiter, c_file.name, SPathDelimiter); file = _findfirst(tmp, &bmpf); #else ! sprintf(Path, "%s%s", core->GamePath, SaveFolder); DIR * ndir = opendir(Path); ! if(ndir == NULL) //If we cannot open the Directory return NULL; ! #endif ! #ifndef WIN32 //Linux Statement ! struct dirent * de = readdir(dir); //Lookup the first entry in the Directory #endif do { --- 152,173 ---- sprintf(tmp, "%s%s%s%s%s*.bmp", core->GamePath, SaveFolder, SPathDelimiter, c_file.name, SPathDelimiter); file = _findfirst(tmp, &bmpf); + if(file == NULL) { + _findclose(hFile); + return NULL; + } #else ! sprintf(Path, "%s%s%s%s", core->GamePath, SaveFolder, SPathDelimiter, de->d_name); DIR * ndir = opendir(Path); ! //If we cannot open the Directory ! if(ndir == NULL) { ! closedir(dir); return NULL; ! } ! struct dirent * de2 = readdir(ndir); //Lookup the first entry in the Directory ! if(de2 == NULL) { // No first entry!!! ! closedir(dir); ! closedir(ndir); ! return NULL; ! } #endif do { *************** *** 165,169 **** if(strnicmp(bmpf.name, "PORTRT", 6) == 0) #else ! if(strnicmp(de->d_name, "PORTRT", 6) == 0) #endif prtrt++; --- 175,179 ---- if(strnicmp(bmpf.name, "PORTRT", 6) == 0) #else ! if(strnicmp(de2->d_name, "PORTRT", 6) == 0) #endif prtrt++; *************** *** 172,176 **** _findclose(file); #else ! } while((de = readdir(ndir)) != NULL); closedir(ndir); //No other files in the directory, close it #endif --- 182,186 ---- _findclose(file); #else ! } while((de2 = readdir(ndir)) != NULL); closedir(ndir); //No other files in the directory, close it #endif *************** *** 181,185 **** } while(_findnext(hFile, &c_file) == 0); _findclose(hFile); - // sprintf(Path, "%s%s%s%s", core->GamePath, SaveFolder,SPathDelimiter, c_file.name); #else } while((de = readdir(dir)) != NULL); --- 191,194 ---- |