[Bf-blender-cvs] [1f60cbdf112] temp-VSE-fixes: Fix memory leak when adding bad VSE image/movie strips

Sebastian Parborg noreply at git.blender.org
Tue Aug 10 16:31:08 CEST 2021


Commit: 1f60cbdf11289e90db3d651abf7de601dab2e068
Author: Sebastian Parborg
Date:   Mon Jul 12 15:38:25 2021 +0200
Branches: temp-VSE-fixes
https://developer.blender.org/rB1f60cbdf11289e90db3d651abf7de601dab2e068

Fix memory leak when adding bad VSE image/movie strips

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

M	source/blender/editors/space_sequencer/sequencer_add.c

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

diff --git a/source/blender/editors/space_sequencer/sequencer_add.c b/source/blender/editors/space_sequencer/sequencer_add.c
index 265a52ed1a6..47495eaa57a 100644
--- a/source/blender/editors/space_sequencer/sequencer_add.c
+++ b/source/blender/editors/space_sequencer/sequencer_add.c
@@ -707,13 +707,13 @@ static int sequencer_add_movie_strip_exec(bContext *C, wmOperator *op)
   }
   else {
     if (!sequencer_add_movie_single_strip(C, op, &load_data)) {
+      sequencer_add_cancel(C, op);
       return OPERATOR_CANCELLED;
     }
   }
 
-  if (op->customdata) {
-    MEM_freeN(op->customdata);
-  }
+  /* Free custom data. */
+  sequencer_add_cancel(C, op);
 
   DEG_relations_tag_update(bmain);
   DEG_id_tag_update(&scene->id, ID_RECALC_SEQUENCER_STRIPS);
@@ -1040,6 +1040,7 @@ static int sequencer_add_image_strip_exec(bContext *C, wmOperator *op)
   load_data.image.len = sequencer_add_image_strip_calculate_length(
       op, load_data.start_frame, &minframe, &numdigits);
   if (load_data.image.len == 0) {
+    sequencer_add_cancel(C, op);
     return OPERATOR_CANCELLED;
   }
 
@@ -1062,9 +1063,8 @@ static int sequencer_add_image_strip_exec(bContext *C, wmOperator *op)
   DEG_id_tag_update(&scene->id, ID_RECALC_SEQUENCER_STRIPS);
   WM_event_add_notifier(C, NC_SCENE | ND_SEQUENCER, scene);
 
-  if (op->customdata) {
-    MEM_freeN(op->customdata);
-  }
+  /* Free custom data. */
+  sequencer_add_cancel(C, op);
 
   return OPERATOR_FINISHED;
 }



More information about the Bf-blender-cvs mailing list