From 8f0df8ec70c11f0f21a72984f4b2809e54bfff0f Mon Sep 17 00:00:00 2001 From: kanjitalk755 Date: Thu, 28 Jun 2018 18:58:55 +0900 Subject: [PATCH] fix double free in SDL --- BasiliskII/src/SDL/video_sdl2.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/BasiliskII/src/SDL/video_sdl2.cpp b/BasiliskII/src/SDL/video_sdl2.cpp index bf8e61f7..755de8d3 100644 --- a/BasiliskII/src/SDL/video_sdl2.cpp +++ b/BasiliskII/src/SDL/video_sdl2.cpp @@ -890,7 +890,10 @@ static int present_sdl_video() guest_surface != NULL) { SDL_Rect destRect = sdl_update_video_rect; - if (SDL_BlitSurface(guest_surface, &sdl_update_video_rect, host_surface, &destRect) != 0) { + LOCK_PALETTE; + int result = SDL_BlitSurface(guest_surface, &sdl_update_video_rect, host_surface, &destRect); + UNLOCK_PALETTE; + if (result != 0) { SDL_UnlockMutex(sdl_update_video_mutex); return -1; }