From 2457c84338a0a6487a80c3bcb29c92553aef31ef Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Sun, 1 May 2005 16:20:42 +0000 Subject: [PATCH] gst/elements/gstfakesink.c: don't error when we are in error already the correct fix would be to not allow erroring i... Original commit message from CVS: * gst/elements/gstfakesink.c: (gst_fakesink_change_state): don't error when we are in error already the correct fix would be to not allow erroring in downwards state changes, but I guess the API police would hunt me down if I did that --- ChangeLog | 8 ++++++++ gst/elements/gstfakesink.c | 3 ++- plugins/elements/gstfakesink.c | 3 ++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 89a726d8d1..803048ad52 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2005-05-01 Benjamin Otte + + * gst/elements/gstfakesink.c: (gst_fakesink_change_state): + don't error when we are in error already + the correct fix would be to not allow erroring in downwards + state changes, but I guess the API police would hunt me down if I + did that + 2005-04-26 Wim Taymans * gst/gsttrashstack.h: diff --git a/gst/elements/gstfakesink.c b/gst/elements/gstfakesink.c index 851b6f9375..c06ecf51e7 100644 --- a/gst/elements/gstfakesink.c +++ b/gst/elements/gstfakesink.c @@ -396,7 +396,8 @@ gst_fakesink_change_state (GstElement * element) goto error; break; case GST_STATE_PLAYING_TO_PAUSED: - if (fakesink->state_error == FAKESINK_STATE_ERROR_PLAYING_PAUSED) + if (!GST_FLAG_IS_SET (fakesink, GST_ELEMENT_IN_ERROR) && + fakesink->state_error == FAKESINK_STATE_ERROR_PLAYING_PAUSED) goto error; break; case GST_STATE_PAUSED_TO_READY: diff --git a/plugins/elements/gstfakesink.c b/plugins/elements/gstfakesink.c index 851b6f9375..c06ecf51e7 100644 --- a/plugins/elements/gstfakesink.c +++ b/plugins/elements/gstfakesink.c @@ -396,7 +396,8 @@ gst_fakesink_change_state (GstElement * element) goto error; break; case GST_STATE_PLAYING_TO_PAUSED: - if (fakesink->state_error == FAKESINK_STATE_ERROR_PLAYING_PAUSED) + if (!GST_FLAG_IS_SET (fakesink, GST_ELEMENT_IN_ERROR) && + fakesink->state_error == FAKESINK_STATE_ERROR_PLAYING_PAUSED) goto error; break; case GST_STATE_PAUSED_TO_READY: