Commit: 4a76934ba3ad1d26744197bc79664adada81a0f4
Author: Nathan Craddock
Date:   Sat Nov 14 14:09:53 2020 -0700
Branches: temp-lineart-contained
https://developer.blender.org/rB4a76934ba3ad1d26744197bc79664adada81a0f4

Outliner: Fix memory errors in runtime data

Fix a heap-use-after-free when duplicating outliner editors, and fully
free runtime data when freeing outliner editors.

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

M       source/blender/editors/space_outliner/space_outliner.c

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

diff --git a/source/blender/editors/space_outliner/space_outliner.c 
b/source/blender/editors/space_outliner/space_outliner.c
index ce772043e3b..5ec55eee7fb 100644
--- a/source/blender/editors/space_outliner/space_outliner.c
+++ b/source/blender/editors/space_outliner/space_outliner.c
@@ -53,6 +53,7 @@
 
 #include "GPU_framebuffer.h"
 #include "outliner_intern.h"
+#include "tree/tree_display.h"
 
 static void outliner_main_region_init(wmWindowManager *wm, ARegion *region)
 {
@@ -353,6 +354,7 @@ static void outliner_free(SpaceLink *sl)
   }
 
   if (space_outliner->runtime) {
+    outliner_tree_display_destroy(&space_outliner->runtime->tree_display);
     MEM_freeN(space_outliner->runtime);
   }
 }
@@ -381,6 +383,7 @@ static SpaceLink *outliner_duplicate(SpaceLink *sl)
 
   if (space_outliner->runtime) {
     space_outliner_new->runtime = MEM_dupallocN(space_outliner->runtime);
+    space_outliner_new->runtime->tree_display = NULL;
   }
 
   return (SpaceLink *)space_outliner_new;

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to