GNOME Bugzilla – Bug 528868
URI schemes/protocols should be handled case insensitive
Last modified: 2008-04-19 15:35:56 UTC
Hi, as Alp Toker pointed out on IRC URI schemes should be handled case insensitive but all URI schemes we return should be lower case: <alp> specify schemes must do so with lowercase letters. An implementation <alp> should accept uppercase letters as equivalent to lowercase in scheme <alp> names (e.g., allow "HTTP" as well as "http") for the sake of <alp> robustness but should only produce lowercase scheme names for <alp> consistency. <alp> section 3.1 of RFC 3986 Not sure which code this bug affects, at least filesrc and filesink do a case sensitive check for "file".
this would affect gst/gsturi.c and wouldn't break API as far as I can think.
2008-04-19 Sebastian Dröge <slomo@circular-chaos.org> * gst/gsturi.c: (gst_uri_protocol_check_internal), (gst_uri_get_protocol), (gst_uri_has_protocol), (gst_uri_construct), (gst_uri_handler_set_uri): A valid URI scheme can also include '+', '-' and '.' additional to alphanumeric characters as per RFC 3986 Section 3.1. Handle URI schemes case insensitive in all places and convert to lower-case when constructing an URI or setting an URI with the GstURIHandler interface. Fixes bug #528868. All elements can still assume (as before) that they will get passed URIs with a lower-case URI scheme by the GstURIHandler interface.