summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulien Moutte <julien@moutte.net>2004-02-01 22:33:07 +0000
committerJulien Moutte <julien@moutte.net>2004-02-01 22:33:07 +0000
commit119c42f201c5870562809a99d9a8f1c5679ad61a (patch)
treeba084db4dc7b3fb2916d9fb5b8529f15627c7134
parent0cf194b47616188cdbeaabe3220c84dedb7018c4 (diff)
downloadgst-plugins-bad-119c42f201c5870562809a99d9a8f1c5679ad61a.tar.gz
gst-plugins-bad-119c42f201c5870562809a99d9a8f1c5679ad61a.tar.bz2
gst-plugins-bad-119c42f201c5870562809a99d9a8f1c5679ad61a.zip
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
-rw-r--r--ChangeLog9
-rw-r--r--gst-libs/gst/play/play.c10
2 files changed, 18 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 76d62af7..ec86a2c8 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+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
+
2004-02-01 Thomas Vander Stichele <thomas at apestaart dot org>
* configure.ac:
diff --git a/gst-libs/gst/play/play.c b/gst-libs/gst/play/play.c
index a7a04a05..ba100fb3 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;