diff options
author | Julien Moutte <julien@moutte.net> | 2003-06-01 11:43:08 +0000 |
---|---|---|
committer | Julien Moutte <julien@moutte.net> | 2003-06-01 11:43:08 +0000 |
commit | 474048118399c72b29605a92100edfa7284bca92 (patch) | |
tree | 492238d34c99d2da20d6fbb8e00a6b1dccf4c1ca /gst-libs/gst/play | |
parent | a8b0a796c5d4e1bc2378340959dd8b0d16fc472b (diff) | |
download | gst-plugins-bad-474048118399c72b29605a92100edfa7284bca92.tar.gz gst-plugins-bad-474048118399c72b29605a92100edfa7284bca92.tar.bz2 gst-plugins-bad-474048118399c72b29605a92100edfa7284bca92.zip |
Fixing error message when a plugin is missing (gst-player -> libgstplay).
Original commit message from CVS:
Fixing error message when a plugin is missing (gst-player -> libgstplay).
Pipeline state change on error is now done directly in error callback, there's still something weird with oss /dev/dsp ressource busy error.
Diffstat (limited to 'gst-libs/gst/play')
-rw-r--r-- | gst-libs/gst/play/play.old.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/gst-libs/gst/play/play.old.c b/gst-libs/gst/play/play.old.c index d0f60882..bb500638 100644 --- a/gst-libs/gst/play/play.old.c +++ b/gst-libs/gst/play/play.old.c @@ -144,7 +144,7 @@ gst_play_error_plugin ( GstPlayError type, *error = g_error_new ( GST_PLAY_ERROR, type, "The %s plug-in could not be found. " - "This plug-in is essential for gst-player. " + "This plug-in is essential for libgstplay. " "Please install it and verify that it works " "by running 'gst-inspect %s'", name, name); @@ -341,8 +341,6 @@ gst_play_idle_signal (GstPlay *play) gst_object_unref (signal->signal_data.info.object); break; case PIPELINE_ERROR: - if (gst_element_get_state(play->pipeline) == GST_STATE_PLAYING) - gst_element_set_state(play->pipeline, GST_STATE_READY); g_signal_emit (G_OBJECT (play), gst_play_signals[PIPELINE_ERROR], 0, signal->signal_data.error.element, signal->signal_data.error.error); if (signal->signal_data.error.error) @@ -435,11 +433,14 @@ callback_pipeline_error ( GstElement *object, signal->signal_id = PIPELINE_ERROR; signal->signal_data.error.element = orig; signal->signal_data.error.error = g_strdup(error); - + gst_object_ref (GST_OBJECT(orig)); g_async_queue_push(play->signal_queue, signal); + if (GST_IS_ELEMENT(play->pipeline)) + gst_element_set_state(play->pipeline, GST_STATE_READY); + play->idle_add_func ((GSourceFunc) gst_play_idle_signal, play); } @@ -477,8 +478,6 @@ callback_pipeline_state_change ( GstElement *element, g_return_if_fail (GST_IS_PLAY (play)); g_return_if_fail (element == play->pipeline); - /*g_print ("got state change %s to %s\n", gst_element_state_get_name (old), gst_element_state_get_name (state));*/ - /* do additional stuff depending on state */ if (GST_IS_PIPELINE (play->pipeline)){ switch (state) { |