diff options
author | SmallJoker <mk939@ymail.com> | 2023-03-02 22:08:49 +0100 |
---|---|---|
committer | sfan5 <sfan5@live.de> | 2023-03-05 14:41:55 +0100 |
commit | 847ed04e0ad903b064f4f4a444d25f7cdc1130cb (patch) | |
tree | caedde7d31ef3358c4de9f94157c249db1873ef2 /src | |
parent | e66e583f5e42441bdf17cd60f47174166f08e6d1 (diff) | |
download | minetest-847ed04e0ad903b064f4f4a444d25f7cdc1130cb.tar.xz |
Tile: Fix segfault caused by invalid PNG data
Diffstat (limited to 'src')
-rw-r--r-- | src/client/tile.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/client/tile.cpp b/src/client/tile.cpp index a29a6611a..14fc316e7 100644 --- a/src/client/tile.cpp +++ b/src/client/tile.cpp @@ -1869,6 +1869,11 @@ bool TextureSource::generateImagePart(std::string part_of_name, video::IImage* pngimg = vd->createImageFromFile(memfile); memfile->drop(); + if (!pngimg) { + errorstream << "generateImagePart(): Invalid PNG data" << std::endl; + return false; + } + if (baseimg) { blitBaseImage(pngimg, baseimg); } else { |