[Bf-blender-cvs] [549a5fd661c] vr_scene_inspection: Fix use-after-free when closing Blender with running VR session
Julian Eisel
noreply at git.blender.org
Mon Mar 9 12:55:57 CET 2020
Commit: 549a5fd661c06102ce203749f2f66bd2bf23cc0d
Author: Julian Eisel
Date: Mon Mar 9 12:41:02 2020 +0100
Branches: vr_scene_inspection
https://developer.blender.org/rB549a5fd661c06102ce203749f2f66bd2bf23cc0d
Fix use-after-free when closing Blender with running VR session
Somehow two wm_xr_data_destroy() calls ended up there, probably a merge
conflict.
===================================================================
M source/blender/windowmanager/intern/wm.c
M source/blender/windowmanager/intern/wm_xr.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm.c b/source/blender/windowmanager/intern/wm.c
index f73313b98a9..6dbd4a48e91 100644
--- a/source/blender/windowmanager/intern/wm.c
+++ b/source/blender/windowmanager/intern/wm.c
@@ -380,10 +380,6 @@ void wm_close_and_free(bContext *C, wmWindowManager *wm)
WM_msgbus_destroy(wm->message_bus);
}
-#ifdef WITH_XR_OPENXR
- wm_xr_data_destroy(wm);
-#endif
-
BLI_freelistN(&wm->paintcursors);
WM_drag_free_list(&wm->drags);
diff --git a/source/blender/windowmanager/intern/wm_xr.c b/source/blender/windowmanager/intern/wm_xr.c
index 034572e5687..2fb6929bfbe 100644
--- a/source/blender/windowmanager/intern/wm_xr.c
+++ b/source/blender/windowmanager/intern/wm_xr.c
@@ -185,6 +185,7 @@ void wm_xr_data_destroy(wmWindowManager *wm)
{
if (wm->xr.context != NULL) {
GHOST_XrContextDestroy(wm->xr.context);
+ wm->xr.context = NULL;
}
if (wm->xr.session_state != NULL) {
wm_xr_runtime_session_state_free(&wm->xr.session_state);
More information about the Bf-blender-cvs
mailing list