diff options
author | Julien Moutte <julien@moutte.net> | 2004-02-01 22:33:07 +0000 |
---|---|---|
committer | Julien Moutte <julien@moutte.net> | 2004-02-01 22:33:07 +0000 |
commit | 119c42f201c5870562809a99d9a8f1c5679ad61a (patch) | |
tree | ba084db4dc7b3fb2916d9fb5b8529f15627c7134 /gst-libs/gst | |
parent | 0cf194b47616188cdbeaabe3220c84dedb7018c4 (diff) | |
download | gstreamer-plugins-bad-119c42f201c5870562809a99d9a8f1c5679ad61a.tar.gz |
gst-libs/gst/play/play.c: s/sinkconnect/sink_link
Original commit message from CVS:
2004-02-01 Julien MOUTTE <julien@moutte.net>
* gst-libs/gst/play/play.c: (gst_play_seek_to_time),
(gst_play_new): Accepting NULL GError, blocking time tick while seeking. * sys/ximage/ximagesink.c: (gst_ximagesink_sink_link),
(gst_ximagesink_chain), (gst_ximagesink_init): s/sinkconnect/sink_link
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_sink_link),
(gst_xvimagesink_chain), (gst_xvimagesink_init): s/sinkconnect/sink_link
Diffstat (limited to 'gst-libs/gst')
-rw-r--r-- | gst-libs/gst/play/play.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gst-libs/gst/play/play.c b/gst-libs/gst/play/play.c index a7a04a05d..ba100fb3d 100644 --- a/gst-libs/gst/play/play.c +++ b/gst-libs/gst/play/play.c @@ -671,6 +671,10 @@ gst_play_seek_to_time (GstPlay * play, gint64 time_nanos) GST_IS_ELEMENT (audio_sink_element)) { gboolean s = FALSE; + /* We block the tick signal while seeking */ + if (play->priv->tick_id) + g_signal_handler_block (G_OBJECT (play), play->priv->tick_id); + s = gst_element_seek (video_seek_element, GST_FORMAT_TIME | GST_SEEK_METHOD_SET | GST_SEEK_FLAG_FLUSH, time_nanos); @@ -680,6 +684,10 @@ gst_play_seek_to_time (GstPlay * play, gint64 time_nanos) time_nanos); } + /* We unblock the tick signal after seeking */ + if (play->priv->tick_id) + g_signal_handler_unblock (G_OBJECT (play), play->priv->tick_id); + if (s) { GstFormat format = GST_FORMAT_TIME; gboolean q = FALSE; @@ -1125,7 +1133,7 @@ gst_play_new (GError **error) { GstPlay *play = g_object_new (GST_TYPE_PLAY, NULL); - if (play->priv->error) + if ( (error) && (play->priv->error) ) { *error = play->priv->error; play->priv->error = NULL; |