filesrc: Improve debugging a bit on invalid URIs
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 7 May 2009 14:01:57 +0000 (16:01 +0200)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Tue, 12 May 2009 07:02:45 +0000 (09:02 +0200)
plugins/elements/gstfilesrc.c

index caa2ef7..84219f2 100644 (file)
@@ -1132,6 +1132,7 @@ gst_file_src_uri_set_uri (GstURIHandler * handler, const gchar * uri)
   gchar *location, *hostname = NULL;
   gboolean ret = FALSE;
   GstFileSrc *src = GST_FILE_SRC (handler);
+  GError *error = NULL;
 
   if (strcmp (uri, "file://") == 0) {
     /* Special case for "file://" as this is used by some applications
@@ -1141,10 +1142,16 @@ gst_file_src_uri_set_uri (GstURIHandler * handler, const gchar * uri)
     return TRUE;
   }
 
-  location = g_filename_from_uri (uri, &hostname, NULL);
+  location = g_filename_from_uri (uri, &hostname, &error);
 
-  if (!location) {
-    GST_WARNING_OBJECT (src, "Invalid URI '%s' for filesrc", uri);
+  if (!location || error) {
+    if (error) {
+      GST_WARNING_OBJECT (src, "Invalid URI '%s' for filesrc: %s", uri,
+          error->message);
+      g_error_free (error);
+    } else {
+      GST_WARNING_OBJECT (src, "Invalid URI '%s' for filesrc", uri);
+    }
     goto beach;
   }