From 27313d05c13a9bb1631fad52bb5c10abac6df4b5 Mon Sep 17 00:00:00 2001 From: Mark Nauwelaerts Date: Wed, 13 Jul 2011 11:39:15 +0200 Subject: [PATCH] basesink: unset PLAYING transition flag when transition completed --- libs/gst/base/gstbasesink.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c index b9f2f7c..4d4deae 100644 --- a/libs/gst/base/gstbasesink.c +++ b/libs/gst/base/gstbasesink.c @@ -5044,6 +5044,12 @@ gst_base_sink_change_state (GstElement * element, GstStateChange transition) } switch (transition) { + case GST_STATE_CHANGE_PAUSED_TO_PLAYING: + /* completed transition, so need not be marked any longer + * And it should be unmarked, since e.g. losing our position upon flush + * does not really change state to PAUSED ... */ + g_atomic_int_set (&basesink->priv->to_playing, FALSE); + break; case GST_STATE_CHANGE_PLAYING_TO_PAUSED: g_atomic_int_set (&basesink->priv->to_playing, FALSE); GST_DEBUG_OBJECT (basesink, "PLAYING to PAUSED"); -- 2.7.4