1
0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-06-25 22:18:30 +02:00
VVVVVV/desktop_version/src
Misa 6e832cae20 LoadImage: Check LodePNG return value and print errors
Dvoid from Discord just reported a crash when trying to load a
custom tiles2.png that was encoded weirdly.

The problem is that we don't check the return value from LodePNG, so
LodePNG gives us a null pointer, and then
SDL_CreateRGBSurfaceWithFormatFrom doesn't check this null pointer,
which then propagates until we crash in SDL_ConvertSurfaceFormat (or
rather, one of its sub-functions), and we would probably crash somewhere
else anyway if it continued.

After properly checking LodePNG's return value, along with printing the
error, it turns out that Dvoid's custom tiles2.png had an "invalid CRC".
I don't know what this means but it sounds worrying. `feh` can read the
file correctly but it also reports a "CRC error".
2021-11-14 14:02:51 -08:00
..
BinaryBlob.cpp Fix regression with VVV_COMPILEMUSIC aborting 2021-09-23 22:35:52 -07:00
BinaryBlob.h Use fixed-size int types for resourceheader 2021-09-23 22:21:49 -07:00
BlockV.cpp Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
BlockV.h Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Constants.h Fix SCREEN_HEIGHT_PIXELS being wrong constant 2021-10-01 09:35:28 -07:00
Credits.h Move Misa to C++ credits 2021-08-31 23:22:22 -07:00
CustomLevels.cpp Fix regression with counting out-of-bounds custom entities 2021-10-27 16:49:57 -07:00
CustomLevels.h Remove vmult lookup tables 2021-09-24 16:37:27 -07:00
DeferCallbacks.c Add deferred callbacks to game loop 2021-03-21 02:55:42 -04:00
DeferCallbacks.h Add deferred callbacks to game loop 2021-03-21 02:55:42 -04:00
Editor.cpp Fix regression with rainbow lab BG in editor 2021-10-28 17:27:13 -07:00
Editor.h Use const std::string& where possible in function params 2021-09-06 15:43:59 -07:00
Ent.cpp Untabify every single file 2021-09-06 18:56:39 -07:00
Ent.h Untabify every single file 2021-09-06 18:56:39 -07:00
Entity.cpp Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Entity.h Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Enums.h Untabify every single file 2021-09-06 18:56:39 -07:00
Exit.h Use SDL_NORETURN 2021-09-27 10:32:23 -07:00
FileSystemUtils.cpp Remove Ethan's binary-or comment 2021-09-23 23:26:28 -07:00
FileSystemUtils.h Call FS.syncfs on Emscripten (#838) 2021-09-02 13:19:51 -04:00
Finalclass.cpp Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
Finalclass.h Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
Game.cpp Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Game.h Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
GlitchrunnerMode.c Split glitchrunner mode into multiple versions 2021-08-05 13:35:21 -04:00
GlitchrunnerMode.h Split glitchrunner mode into multiple versions 2021-08-05 13:35:21 -04:00
GOGNetwork.c Axe NETWORK_[set/get]AchievementProgress() 2021-09-19 21:49:54 -07:00
Graphics.cpp Use SDL_FALLTHROUGH if available 2021-11-11 23:48:41 -08:00
Graphics.h Rename textbox to textboxes and textbox line to lines 2021-09-12 21:06:27 -07:00
GraphicsResources.cpp LoadImage: Check LodePNG return value and print errors 2021-11-14 14:02:51 -08:00
GraphicsResources.h Consistently use angle brackets for SDL.h includes 2020-07-19 21:37:40 -04:00
GraphicsUtil.cpp Use SDL_BlitScaled in ScaleSurface 2021-09-05 20:07:18 -07:00
GraphicsUtil.h Add ClearSurface() 2021-02-25 19:38:25 -05:00
Input.cpp Don't toggle VSync twice 2021-10-29 12:24:10 -07:00
Input.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
KeyPoll.cpp Handle lost focus on Emscripten 2021-09-07 09:43:48 -07:00
KeyPoll.h Untabify every single file 2021-09-06 18:56:39 -07:00
Labclass.cpp Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
Labclass.h Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
Logic.cpp Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Logic.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
main.cpp Switch over to using SDL_GetTicks64() 2021-11-01 11:37:50 -07:00
MakeAndPlay.h Use multiline comments in C files 2021-04-17 00:50:04 -04:00
Map.cpp Fix regression with tile 10 not having nothing behind it 2021-10-06 17:00:50 -07:00
Map.h Remove vmult lookup tables 2021-09-24 16:37:27 -07:00
Maths.h Remove unused math.h include from Maths.h 2021-09-27 23:11:20 -07:00
Music.cpp Music: Do not do fades if not playing 2021-09-10 19:37:33 -07:00
Music.h Move Mix_PausedMusic() call into wrapper function 2021-09-10 19:37:31 -07:00
Network.c Axe NETWORK_[set/get]AchievementProgress() 2021-09-19 21:49:54 -07:00
Network.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
Otherlevel.cpp Untabify every single file 2021-09-06 18:56:39 -07:00
Otherlevel.h Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
preloader.cpp Axe RGBflip() in favor of getRGB() 2021-09-11 02:15:20 -07:00
preloader.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
Render.cpp Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Render.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
RenderFixed.cpp Use resumegamemode to track menu animation 2021-09-05 16:59:05 -07:00
RenderFixed.h Remove now-unneeded deltaframe fix when going to in-game settings 2021-03-21 02:55:42 -04:00
Screen.cpp Remove outdated FIXMEs from Screen.cpp 2021-10-03 13:23:12 -07:00
Screen.h Fix VSync renderer workaround 2021-09-14 20:23:22 -07:00
ScreenSettings.h Untabify every single file 2021-09-06 18:56:39 -07:00
Script.cpp Switch over to using SDL_GetTicks64() 2021-11-01 11:37:50 -07:00
Script.h createentity command: Actually have p1/p2/p3/p4 defaults 2021-08-12 00:20:40 -04:00
Scripts.cpp Add message when player is kicked out of Super Gravitron 2021-09-03 12:08:31 -07:00
SoundSystem.cpp Untabify every single file 2021-09-06 18:56:39 -07:00
SoundSystem.h Untabify every single file 2021-09-06 18:56:39 -07:00
Spacestation2.cpp Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
Spacestation2.h Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
SteamNetwork.c Silence GCC warnings about void*-to-function-pointer casts 2021-10-21 01:00:06 -07:00
TempSDLFallthrough.h Use SDL_FALLTHROUGH if available 2021-11-11 23:48:41 -08:00
TerminalScripts.cpp Untabify every single file 2021-09-06 18:56:39 -07:00
Textbox.cpp Rename textbox to textboxes and textbox line to lines 2021-09-12 21:06:27 -07:00
Textbox.h Rename textbox to textboxes and textbox line to lines 2021-09-12 21:06:27 -07:00
ThirdPartyDeps.c Use multiline comments in C files 2021-04-17 00:50:04 -04:00
Tower.cpp Add POS_MOD macro and use for all positive modulos 2021-09-24 17:48:15 -07:00
Tower.h Remove vmult lookup tables 2021-09-24 16:37:27 -07:00
TowerBG.h Untabify every single file 2021-09-06 18:56:39 -07:00
Unused.h Factor out UNUSED macro to header file 2021-05-25 15:23:34 -04:00
UtilityClass.cpp Rename number to number_words 2021-09-25 15:08:13 -07:00
UtilityClass.h Use SDL_FALLTHROUGH if available 2021-11-11 23:48:41 -08:00
Version.h Don't recompile all files when the commit hash is changed 2020-12-25 20:17:01 -05:00
Version.h.in Don't recompile all files when the commit hash is changed 2020-12-25 20:17:01 -05:00
Vlogging.c Mark all vlog functions with printf attributes 2021-09-27 20:49:09 -07:00
Vlogging.h Mark all vlog functions with printf attributes 2021-09-27 20:49:09 -07:00
WarpClass.cpp Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
WarpClass.h Replace roomnames/hiddennames/glitchnames with const char* 2021-09-12 21:06:26 -07:00
XMLUtils.cpp Move all settings to settings.vvv 2020-11-04 12:06:57 -05:00
XMLUtils.h Move all settings to settings.vvv 2020-11-04 12:06:57 -05:00
Xoshiro.c Replace Gravitron RNG with seeded Xoshiro 2021-08-27 12:28:35 -07:00
Xoshiro.h Replace Gravitron RNG with seeded Xoshiro 2021-08-27 12:28:35 -07:00