diff options
author | Robert Swain <robert.swain@gmail.com> | 2012-01-06 09:16:09 -0300 |
---|---|---|
committer | Thibault Saunier <thibault.saunier@collabora.com> | 2012-01-06 09:16:09 -0300 |
commit | e288a6f4604323518fae42591122228342d2c3da (patch) | |
tree | 447c47d90ce20b6a9b4dbd54f73dc4beb7a21d7b | |
parent | fc97c16e7e43cd2362175106e72541113b5e4a81 (diff) |
timeline: simplify code to remove an object from the pendingobjects list
g_list_remove_all () can be used as a simplification as the private data to ges
timeline object are 1:1.
-rw-r--r-- | ges/ges-timeline.c | 15 |
1 files changed, 2 insertions, 13 deletions
diff --git a/ges/ges-timeline.c b/ges/ges-timeline.c index c2659f68..c04185a1 100644 --- a/ges/ges-timeline.c +++ b/ges/ges-timeline.c @@ -648,20 +648,9 @@ layer_object_removed_cb (GESTimelineLayer * layer, GESTimelineObject * object, * it no longer needs to be discovered so remove it from the pendingobjects * list if it belongs to this layer */ if (GES_IS_TIMELINE_FILE_SOURCE (object)) { - GList *pendingobjects; - GES_TIMELINE_PENDINGOBJS_LOCK (timeline); - pendingobjects = timeline->priv->pendingobjects; - - tmp = pendingobjects; - while (tmp) { - GList *next = tmp->next; - - if (layer == (GESTimelineLayer *) ((GESTimelineObject *) tmp->data)->priv) - pendingobjects = g_list_delete_link (pendingobjects, tmp); - tmp = next; - } - timeline->priv->pendingobjects = pendingobjects; + timeline->priv->pendingobjects = + g_list_remove_all (timeline->priv->pendingobjects, object); GES_TIMELINE_PENDINGOBJS_UNLOCK (timeline); } |