[Bf-blender-cvs] [db06fd9a017] modifier-panels-ui: Fix use-after-free again

Julian Eisel noreply at git.blender.org
Sat Apr 11 23:56:54 CEST 2020


Commit: db06fd9a017fbef4b0eb4584cfb834701bfbf225
Author: Julian Eisel
Date:   Sat Apr 11 23:43:31 2020 +0200
Branches: modifier-panels-ui
https://developer.blender.org/rBdb06fd9a017fbef4b0eb4584cfb834701bfbf225

Fix use-after-free again

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

M	source/blender/editors/interface/interface_panel.c

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

diff --git a/source/blender/editors/interface/interface_panel.c b/source/blender/editors/interface/interface_panel.c
index 80d506a9104..37fe0fb5b1c 100644
--- a/source/blender/editors/interface/interface_panel.c
+++ b/source/blender/editors/interface/interface_panel.c
@@ -1436,8 +1436,11 @@ static void ui_do_animate(bContext *C, Panel *panel)
   }
 
   if (fac >= 1.0f) {
+    /* Store before data is freed. */
+    const bool is_drag_drop = data->is_drag_drop;
+
     panel_activate_state(C, panel, PANEL_STATE_EXIT);
-    if (data->is_drag_drop) {
+    if (is_drag_drop) {
       /* Note: doing this in #panel_activate_state would require removing const for context in many
        * other places. */
       reorder_recreate_panel_list(C, region, panel);



More information about the Bf-blender-cvs mailing list