Add filename to error text for pngloader

This commit is contained in:
Asdow
2026-02-23 18:23:08 +02:00
parent a6d96f5f31
commit 8f178a59ab
+19 -5
View File
@@ -836,8 +836,11 @@ void Load32bppPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop info)
hImage->p32BPPData = (UINT32*)MemAlloc(SIZE); hImage->p32BPPData = (UINT32*)MemAlloc(SIZE);
if(!hImage->p32BPPData) if(!hImage->p32BPPData)
{ {
CHAR8 errorText[512];
sprintf(errorText, "Bad allocation loading image. Filename: %s", hImage->ImageFile);
MemFree(hImage->pETRLEObject); MemFree(hImage->pETRLEObject);
SGP_THROW(L"bad alloc"); SGP_THROW(errorText);
} }
memset(hImage->p32BPPData, 0, SIZE); memset(hImage->p32BPPData, 0, SIZE);
@@ -878,8 +881,11 @@ void Load24bppPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop info)
hImage->p16BPPData = (UINT16*)MemAlloc(SIZE); hImage->p16BPPData = (UINT16*)MemAlloc(SIZE);
if(!hImage->p16BPPData) if(!hImage->p16BPPData)
{ {
CHAR8 errorText[512];
sprintf(errorText, "Bad allocation loading image. Filename: %s", hImage->ImageFile);
MemFree(hImage->pETRLEObject); MemFree(hImage->pETRLEObject);
SGP_THROW(L"bad alloc"); SGP_THROW(errorText);
} }
memset(hImage->p16BPPData, 0, SIZE); memset(hImage->p16BPPData, 0, SIZE);
@@ -899,11 +905,15 @@ void Load24bppPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop info)
void LoadPalettedPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop info) void LoadPalettedPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop info)
{ {
CHAR8 errorText[512];
UINT32 SIZE = info->height * info->width * sizeof(UINT8); UINT32 SIZE = info->height * info->width * sizeof(UINT8);
UINT8 *data = (UINT8*)MemAlloc(SIZE); UINT8 *data = (UINT8*)MemAlloc(SIZE);
if(!data) if(!data)
{ {
SGP_THROW(L"bad alloc"); sprintf(errorText, "Bad allocation loading image. Filename: %s", hImage->ImageFile);
MemFree(hImage->pETRLEObject);
SGP_THROW(errorText);
} }
memset(data,0,SIZE); memset(data,0,SIZE);
for(unsigned int i = 0; i < info->height; ++i) for(unsigned int i = 0; i < info->height; ++i)
@@ -915,8 +925,10 @@ void LoadPalettedPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop in
hImage->pETRLEObject = (ETRLEObject*)MemAlloc(hImage->usNumberOfObjects * sizeof(ETRLEObject)); hImage->pETRLEObject = (ETRLEObject*)MemAlloc(hImage->usNumberOfObjects * sizeof(ETRLEObject));
if(!hImage->pETRLEObject) if(!hImage->pETRLEObject)
{ {
sprintf(errorText, "Bad allocation for ETRLEObject. Filename: %s", hImage->ImageFile);
MemFree(data); MemFree(data);
SGP_THROW(L"bad alloc"); SGP_THROW(errorText);
} }
memset(hImage->pETRLEObject,0, hImage->usNumberOfObjects * sizeof(ETRLEObject)); memset(hImage->pETRLEObject,0, hImage->usNumberOfObjects * sizeof(ETRLEObject));
@@ -931,9 +943,11 @@ void LoadPalettedPNGImage(HIMAGE hImage, png::png_bytepp rows, png::png_infop in
hImage->p8BPPData = (UINT8*)MemAlloc( RESIZE ); hImage->p8BPPData = (UINT8*)MemAlloc( RESIZE );
if(!hImage->p8BPPData) if(!hImage->p8BPPData)
{ {
sprintf(errorText, "Bad allocation for image pixel data. Filename: %s", hImage->ImageFile);
MemFree(hImage->pETRLEObject); MemFree(hImage->pETRLEObject);
MemFree(data); MemFree(data);
SGP_THROW(L"bad alloc"); SGP_THROW(errorText);
} }
UINT8 *compressed = hImage->p8BPPData; UINT8 *compressed = hImage->p8BPPData;
memset(hImage->p8BPPData,0,RESIZE); memset(hImage->p8BPPData,0,RESIZE);