diff options
author | Benjamin Otte <otte@redhat.com> | 2018-12-18 02:04:16 +0100 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2018-12-18 02:04:16 +0100 |
commit | 89c48a08a0fe333644b3a888e465d34fd3a8af99 (patch) | |
tree | 78caea54fea1ab83b2bf2d53e2b6b74d0de7e47b /gtk/gtkmediastream.c | |
parent | c30968861f5c7c07dfe135ce508b9d2a7a31aea8 (diff) | |
download | gtk+-89c48a08a0fe333644b3a888e465d34fd3a8af99.tar.gz |
mediastream: Allow multiple calls to gtk_media_stream_error()
Just ignore all further ones.
Diffstat (limited to 'gtk/gtkmediastream.c')
-rw-r--r-- | gtk/gtkmediastream.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/gtk/gtkmediastream.c b/gtk/gtkmediastream.c index 86f5c72cc5..f8a5dc8ce9 100644 --- a/gtk/gtkmediastream.c +++ b/gtk/gtkmediastream.c @@ -1120,6 +1120,10 @@ gtk_media_stream_unprepared (GtkMediaStream *self) * your GtkMediaStream.pause() implementation), abort pending seeks * and mark the stream as prepared. * + * if the stream is already in an error state, this call will be ignored + * and the existing error will be retained. + * FIXME: Or do we want to set the new error? + * * To unset an error, the stream must be reset via a call to * gtk_media_stream_unprepared(). **/ @@ -1130,9 +1134,11 @@ gtk_media_stream_gerror (GtkMediaStream *self, GtkMediaStreamPrivate *priv = gtk_media_stream_get_instance_private (self); g_return_if_fail (GTK_IS_MEDIA_STREAM (self)); - g_return_if_fail (gtk_media_stream_get_error (self) == NULL); g_return_if_fail (error != NULL); + if (priv->error) + return; + g_object_freeze_notify (G_OBJECT (self)); priv->error = error; |