validate:tools: Return an exit code != 0 if pipeline can't go to playing
authorThibault Saunier <thibault.saunier@collabora.com>
Fri, 10 Jan 2014 17:00:27 +0000 (18:00 +0100)
committerThibault Saunier <thibault.saunier@collabora.com>
Thu, 6 Feb 2014 11:02:58 +0000 (12:02 +0100)
And give some information to the user about why the return code is !=0
everywhere it happens

validate/tools/gst-validate-transcoding.c
validate/tools/gst-validate.c

index 412aa3fce52215e91150f3b906e582f7b3cff52b..d8148d0d08327cf3f9954a4aab61fc26d872f5d5 100644 (file)
@@ -837,8 +837,11 @@ main (int argc, gchar ** argv)
 
   g_print ("Starting pipeline\n");
   if (gst_element_set_state (pipeline,
-          GST_STATE_PLAYING) == GST_STATE_CHANGE_FAILURE)
+          GST_STATE_PLAYING) == GST_STATE_CHANGE_FAILURE) {
+    g_print ("Pipeline failed to go to PLAYING state\n");
+    ret = -1;
     goto exit;
+  }
   g_timeout_add (50, (GSourceFunc) print_position, NULL);
   g_main_loop_run (mainloop);
 
index 8eb97bb12edf38c8133ce824bd67094d4fa93372..a442f172d42bbf84ddad8e32dd48846fb79d2e9e 100644 (file)
@@ -94,7 +94,7 @@ bus_callback (GstBus * bus, GstMessage * message, gpointer data)
       gchar *debug;
       ret = -1;
       gst_message_parse_error (message, &err, &debug);
-      g_print ("Error: %s\n", err->message);
+      g_print ("Error: %s -- Setting returncode to -1\n", err->message);
       g_error_free (err);
       g_free (debug);
       g_main_loop_quit (loop);
@@ -243,6 +243,7 @@ main (int argc, gchar ** argv)
   if (gst_element_set_state (pipeline,
           GST_STATE_PLAYING) == GST_STATE_CHANGE_FAILURE) {
     g_print ("Pipeline failed to go to PLAYING state\n");
+    ret = -1;
     goto exit;
   }
 
@@ -251,8 +252,10 @@ main (int argc, gchar ** argv)
   g_main_loop_run (mainloop);
 
   rep_err = gst_validate_runner_printf (runner);
-  if (ret == 0)
+  if (ret == 0) {
     ret = rep_err;
+    g_print ("Returning %d as error where found", rep_err);
+  }
 
 exit:
   gst_element_set_state (pipeline, GST_STATE_NULL);