[Bf-blender-cvs] [25a283acce6] master: Fix memory leak duplicating sequencer strips
Campbell Barton
noreply at git.blender.org
Tue Apr 5 01:32:06 CEST 2022
Commit: 25a283acce6b34690468d5a521a44c16ee211c2d
Author: Campbell Barton
Date: Tue Apr 5 09:22:32 2022 +1000
Branches: master
https://developer.blender.org/rB25a283acce6b34690468d5a521a44c16ee211c2d
Fix memory leak duplicating sequencer strips
Regression in [0] also skip creating a GSet when there are no F-curves.
[0]: e74420124f3a429ad8a1492e56a7e1561d86d6f7
===================================================================
M source/blender/sequencer/intern/animation.c
===================================================================
diff --git a/source/blender/sequencer/intern/animation.c b/source/blender/sequencer/intern/animation.c
index 27f7316e042..a908bb01d35 100644
--- a/source/blender/sequencer/intern/animation.c
+++ b/source/blender/sequencer/intern/animation.c
@@ -126,10 +126,15 @@ void SEQ_animation_restore_original(Scene *scene, ListBase *list)
void SEQ_animation_duplicate(Scene *scene, Sequence *seq, ListBase *list)
{
+ if (BLI_listbase_is_empty(list)) {
+ return;
+ }
+
GSet *fcurves = SEQ_fcurves_by_strip_get(seq, list);
GSET_FOREACH_BEGIN (FCurve *, fcu, fcurves) {
FCurve *fcu_cpy = BKE_fcurve_copy(fcu);
BLI_addtail(&scene->adt->action->curves, fcu_cpy);
}
GSET_FOREACH_END();
+ BLI_gset_free(fcurves, NULL);
}
More information about the Bf-blender-cvs
mailing list