diff src/audacious/input.c @ 3341:3da640de0e99 trunk

Check for registered URI://s defined by uri_set_plugin
author Christian Birchinger <joker@netswarm.net>
date Sun, 12 Aug 2007 21:12:54 +0200
parents ea806daf3ef0
children 5d50b9604ddc
line wrap: on
line diff
--- a/src/audacious/input.c	Sun Aug 12 20:18:04 2007 +0200
+++ b/src/audacious/input.c	Sun Aug 12 21:12:54 2007 +0200
@@ -369,6 +369,26 @@
     if (tmp != NULL && g_ascii_isdigit(*(tmp + 1)))
         *tmp = '\0';
 
+    /* Check for plugins with custom URI:// strings */
+    /* cue:// cdda:// tone:// tact:// */
+    if ((ip = uri_get_plugin(filename)) != NULL &&
+        input_is_enabled(ip->filename) == TRUE)
+    {
+        if (ip->is_our_file != NULL)
+            ret = ip->is_our_file(filename_proxy);
+        else
+            ret = 0;
+        if (ret > 0)
+        {
+            g_free(filename_proxy);
+            pr = g_new0(ProbeResult, 1);
+            pr->ip = ip;
+            return pr;
+        }
+        g_free(filename_proxy);
+        return NULL;
+    }
+
     /* CD-Audio uses cdda:// dummy paths, no filedescriptor handling for it */
     /* also cuesheet uses cue:// */
     if (!g_strncasecmp(filename, "cdda://", 7) ||