From 33fa0750bec6211cfcddc232022ccdc966c08680 Mon Sep 17 00:00:00 2001 From: Misa Date: Fri, 3 Mar 2023 16:46:15 -0800 Subject: [PATCH] Destroy `gameScreen` after all other graphics are destroyed This is because destroying the renderer causes use-after-frees since the renderer destroys all textures when it gets destroyed. This fixes a Valgrind error where an invalid read occurs because the font textures get destroyed again after the renderer is destroyed. --- desktop_version/src/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desktop_version/src/main.cpp b/desktop_version/src/main.cpp index 7b2ade94..eb043fe3 100644 --- a/desktop_version/src/main.cpp +++ b/desktop_version/src/main.cpp @@ -823,9 +823,9 @@ static void cleanup(void) graphics.grphx.destroy(); graphics.destroy_buffers(); - gameScreen.destroy(); graphics.destroy(); font::destroy(); + gameScreen.destroy(); music.destroy(); map.destroy(); NETWORK_shutdown();