1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-28 08:48:48 +02:00

Fixed crash on attempt to upscale nonexisting image

This commit is contained in:
Ivan Savenko 2024-09-03 09:22:40 +00:00
parent ed60387041
commit e035ae8b48

View File

@ -270,7 +270,7 @@ std::shared_ptr<ISharedImage> SDLImageShared::scaleInteger(int factor, SDL_Palet
if (factor <= 0)
throw std::runtime_error("Unable to scale by integer value of " + std::to_string(factor));
if (palette && surf->format->palette)
if (palette && surf && surf->format->palette)
SDL_SetSurfacePalette(surf, palette);
SDL_Surface * scaled = CSDL_Ext::scaleSurfaceIntegerFactor(surf, factor, EScalingAlgorithm::XBRZ);
@ -287,7 +287,7 @@ std::shared_ptr<ISharedImage> SDLImageShared::scaleInteger(int factor, SDL_Palet
// erase our own reference
SDL_FreeSurface(scaled);
if (surf->format->palette)
if (surf && surf->format->palette)
SDL_SetSurfacePalette(surf, originalPalette);
return ret;