Fix another potential png load failure.

Also, rename func for consistency.
This commit is contained in:
Unknown W. Brackets 2012-12-24 17:07:00 -08:00
parent efefa80ab9
commit ca22e38752
2 changed files with 11 additions and 6 deletions

View File

@ -429,7 +429,7 @@ u32 SavedataParam::SetPspParam(SceUtilitySavedataParam *param)
PSPFileInfo info = pspFileSystem.GetFileInfo(fileDataPath);
if (info.exists)
{
LoadFileInfo(realCount, info);
SetFileInfo(realCount, info);
DEBUG_LOG(HLE,"%s Exist",fileDataPath.c_str());
realCount++;
@ -463,7 +463,7 @@ u32 SavedataParam::SetPspParam(SceUtilitySavedataParam *param)
PSPFileInfo info = pspFileSystem.GetFileInfo(fileDataPath);
if (info.exists)
{
LoadFileInfo(0, info);
SetFileInfo(0, info);
DEBUG_LOG(HLE,"%s Exist",fileDataPath.c_str());
saveNameListDataCount = 1;
@ -485,7 +485,7 @@ u32 SavedataParam::SetPspParam(SceUtilitySavedataParam *param)
return 0;
}
void SavedataParam::LoadFileInfo(int idx, PSPFileInfo &info)
void SavedataParam::SetFileInfo(int idx, PSPFileInfo &info)
{
saveDataList[idx].size = info.size;
saveDataList[idx].saveName = GetSaveName(pspParam);
@ -508,10 +508,12 @@ void SavedataParam::LoadFileInfo(int idx, PSPFileInfo &info)
int success = pngLoadPtr(textureDataPNG, (int)info2.size, &w, &h, &textureData, false);
delete[] textureDataPNG;
u32 texSize = w*h*4;
u32 atlasPtr;
if (success)
atlasPtr = kernelMemory.Alloc(texSize, true, "SaveData Icon");
if (success && atlasPtr > 0)
{
u32 texSize = w*h*4;
u32 atlasPtr = kernelMemory.Alloc(texSize, true, "SaveData Icon");
saveDataList[idx].textureData = atlasPtr;
Memory::Memcpy(atlasPtr, textureData, texSize);
free(textureData);
@ -519,7 +521,10 @@ void SavedataParam::LoadFileInfo(int idx, PSPFileInfo &info)
saveDataList[idx].textureHeight = h;
}
else
{
WARN_LOG(HLE, "Unable to load PNG data for savedata.");
saveDataList[idx].textureData = 0;
}
}
else
{

View File

@ -168,7 +168,7 @@ public:
private:
void Clear();
void LoadFileInfo(int idx, PSPFileInfo &info);
void SetFileInfo(int idx, PSPFileInfo &info);
SceUtilitySavedataParam* pspParam;
int selectedSave;