gst_caps_to_string() is not always only MIME type
authorPhilip Chimento <philip.chimento@gmail.com>
Sun, 23 Feb 2014 20:55:13 +0000 (12:55 -0800)
committerPhilip Chimento <philip.chimento@gmail.com>
Sun, 23 Feb 2014 20:55:13 +0000 (12:55 -0800)
In the case of audio/x-mod, other information may follow, so use
g_str_has_prefix() instead of strcmp().

libchimara/schannel.c

index bc59b5449029b47dd628c43b1d2c65334c10d268..d2f88b80e1ed0aefb732065173adfd20673262eb 100644 (file)
@@ -155,7 +155,8 @@ on_type_found(GstElement *typefind, guint probability, GstCaps *caps, schanid_t
                        WARNING(_("Could not link GStreamer elements"));
                        goto finally;
                }
                        WARNING(_("Could not link GStreamer elements"));
                        goto finally;
                }
-       } else if(strcmp(type, "audio/x-mod") == 0) {
+       } else if(g_str_has_prefix(type, "audio/x-mod")) {
+               /* "audio/x-mod, type=(string)s3m" has been observed */
                s->decode = gst_element_factory_make("modplug", NULL);
                if(!s->decode) {
                        WARNING(_("Could not create 'modplug' GStreamer element"));
                s->decode = gst_element_factory_make("modplug", NULL);
                if(!s->decode) {
                        WARNING(_("Could not create 'modplug' GStreamer element"));