read-metadata: Stop if setting the pipeline state back to NULL fails
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Sun, 13 Jun 2010 15:03:53 +0000 (17:03 +0200)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Sun, 13 Jun 2010 15:03:53 +0000 (17:03 +0200)
tests/examples/metadata/read-metadata.c

index 9c3d4c88c74ed3992893a1cd81962c938d1b8dda..52ebfe41f22834050840fc61459196fff27d26bd 100644 (file)
@@ -184,7 +184,12 @@ main (int argc, char *argv[])
       g_print ("No metadata found for %s\n", argv[i]);
 
     sret = gst_element_set_state (GST_ELEMENT (pipeline), GST_STATE_NULL);
-#ifndef NEW_PIPE_PER_FILE
+#ifdef NEW_PIPE_PER_FILE
+    if (sret != GST_STATE_CHANGE_SUCCESS) {
+      g_print ("State change failed. Aborting\n");
+      break;
+    }
+#else
     if (GST_STATE_CHANGE_ASYNC == sret) {
       if (GST_STATE_CHANGE_FAILURE ==
           gst_element_get_state (GST_ELEMENT (pipeline), &state, NULL,
@@ -192,6 +197,9 @@ main (int argc, char *argv[])
         g_print ("State change failed. Aborting");
         break;
       }
+    } else if (sret != GST_STATE_CHANGE_SUCCESS) {
+      g_print ("State change failed. Aborting\n");
+      break;
     }
 #endif