diff options
author | Thibault Saunier <tsaunier@igalia.com> | 2019-03-28 11:29:05 -0300 |
---|---|---|
committer | Thibault Saunier <tsaunier@igalia.com> | 2019-04-15 17:11:48 -0400 |
commit | 7f0810bae78e88f423c3f2c05a16fe973977e045 (patch) | |
tree | dcbb04e8701c1ed2a35cb8ec13a88cedee896818 /ges | |
parent | 49b004fe30713894dba7d18d1833d8836ff14bda (diff) |
Fix splitting control bindings leaks
Diffstat (limited to 'ges')
-rw-r--r-- | ges/ges-track-element.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/ges/ges-track-element.c b/ges/ges-track-element.c index ca18bd50..d7006b38 100644 --- a/ges/ges-track-element.c +++ b/ges/ges-track-element.c @@ -424,6 +424,7 @@ _update_control_bindings (GESTimelineElement * element, GstClockTime inpoint, if (next->timestamp > inpoint) break; } + g_list_free (values); value_at_pos = interpolate_values_for_position (first, next, inpoint, absolute); @@ -443,6 +444,7 @@ _update_control_bindings (GESTimelineElement * element, GstClockTime inpoint, if (prev->timestamp < duration + inpoint) break; } + g_list_free (values); value_at_pos = interpolate_values_for_position (prev, last, duration + inpoint, @@ -464,6 +466,7 @@ _update_control_bindings (GESTimelineElement * element, GstClockTime inpoint, && value->timestamp > duration + inpoint) gst_timed_value_control_source_unset (source, value->timestamp); } + g_list_free (values); } g_free (specs); @@ -1246,6 +1249,7 @@ _split_binding (GESTrackElement * element, GESTrackElement * new_element, last_value = value; } + g_list_free (values); } static void @@ -1264,6 +1268,7 @@ _copy_binding (GESTrackElement * element, GESTrackElement * new_element, gst_timed_value_control_source_set (new_source, value->timestamp, value->value); } + g_list_free (values); } /* position == GST_CLOCK_TIME_NONE means that we do a simple copy |