diff options
author | Stefan Popa <stefanpopa2209@gmail.com> | 2017-08-17 07:28:46 +0000 |
---|---|---|
committer | Thibault Saunier <thibault.saunier@osg.samsung.com> | 2017-09-01 09:38:45 -0300 |
commit | 5b321dbe3a31e7030b0b9f083fb94ff1117eb923 (patch) | |
tree | e8251ea18b2341524105cd379befdcf75b079657 | |
parent | 4db3800f983975d6b1e4dc0a4adcb90caac46f53 (diff) |
track_element: Always emit "control-binding-removed" signal.
When setting a new control binding on a track element, the old control
binding (if any) is going to be removed. Make sure the
"control-binding-removed" signal is emitted in this case.
Fixes https://phabricator.freedesktop.org/T7340#95666
Reviewed-by: Thibault Saunier <thibault.saunier@collabora.com>
Differential Revision: https://phabricator.freedesktop.org/D1842
-rw-r--r-- | ges/ges-track-element.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/ges/ges-track-element.c b/ges/ges-track-element.c index 23369f8a86..6ac0ca0dbc 100644 --- a/ges/ges-track-element.c +++ b/ges/ges-track-element.c @@ -1489,13 +1489,8 @@ ges_track_element_set_control_source (GESTrackElement * object, if (direct || direct_absolute) { /* First remove existing binding */ - binding = - (GstControlBinding *) g_hash_table_lookup (priv->bindings_hashtable, - property_name); - if (binding) { - GST_LOG ("Removing old binding %p for property %s", binding, - property_name); - gst_object_remove_control_binding (GST_OBJECT (element), binding); + if (ges_track_element_remove_control_binding (object, property_name)) { + GST_LOG ("Removed old binding for property %s", property_name); } if (direct_absolute) |