[Bf-blender-cvs] [39b1842335c] blender2.8: Fix T55882: crash closing user preferences window in some cases.

Brecht Van Lommel noreply at git.blender.org
Tue Jul 10 12:34:02 CEST 2018


Commit: 39b1842335c8ed949b776993686fb27f090655e5
Author: Brecht Van Lommel
Date:   Tue Jul 10 12:31:27 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB39b1842335c8ed949b776993686fb27f090655e5

Fix T55882: crash closing user preferences window in some cases.

===================================================================

M	source/blender/windowmanager/intern/wm_window.c

===================================================================

diff --git a/source/blender/windowmanager/intern/wm_window.c b/source/blender/windowmanager/intern/wm_window.c
index 4f86d05d515..fcd74f32bde 100644
--- a/source/blender/windowmanager/intern/wm_window.c
+++ b/source/blender/windowmanager/intern/wm_window.c
@@ -182,11 +182,11 @@ static void wm_window_check_position(rcti *rect)
 static void wm_ghostwindow_destroy(wmWindowManager *wm, wmWindow *win)
 {
 	if (win->ghostwin) {
-		if (win == wm->windrawable) {
-			/* Prevents non-drawable state of main windows (bugs #22967,
-			 * #25071 and possibly #22477 too). */
-			wm_window_clear_drawable(wm);
-		}
+		/* Prevents non-drawable state of main windows (bugs #22967,
+		 * #25071 and possibly #22477 too). Always clear it even if
+		 * this window was not the drawable one, because we mess with
+		 * drawing context to discard the GW context. */
+		wm_window_clear_drawable(wm);
 
 		if (win == wm->winactive) {
 			wm->winactive = NULL;



More information about the Bf-blender-cvs mailing list