mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-25 17:50:36 +00:00
typefind: Skip parsing of data URIs
Commit a46ab2ced2
introduced a regression,
breaking typefinding for media content muxed in mp4 container and serialized to
data URIs. For this case it doesn't make sense to look for a file extension, so
skip URI parsing.
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1983>
This commit is contained in:
parent
a31307d37d
commit
8ae3c584d0
1 changed files with 7 additions and 0 deletions
|
@ -803,6 +803,8 @@ gst_type_find_get_extension (GstTypeFindElement * typefind, GstPad * pad)
|
||||||
gchar *uri, *result, *path, *base_path, *find;
|
gchar *uri, *result, *path, *base_path, *find;
|
||||||
GstUri *gst_uri;
|
GstUri *gst_uri;
|
||||||
|
|
||||||
|
base_path = NULL;
|
||||||
|
|
||||||
query = gst_query_new_uri ();
|
query = gst_query_new_uri ();
|
||||||
|
|
||||||
/* try getting the caps with an uri query and from the extension */
|
/* try getting the caps with an uri query and from the extension */
|
||||||
|
@ -813,6 +815,11 @@ gst_type_find_get_extension (GstTypeFindElement * typefind, GstPad * pad)
|
||||||
if (uri == NULL)
|
if (uri == NULL)
|
||||||
goto no_uri;
|
goto no_uri;
|
||||||
|
|
||||||
|
/* data URIs paths are opaque and do not semantically represent a
|
||||||
|
filesystem-like resource path, so skip URI parsing for this case. */
|
||||||
|
if (g_str_has_prefix (uri, "data:"))
|
||||||
|
goto no_extension;
|
||||||
|
|
||||||
GST_DEBUG_OBJECT (typefind, "finding extension of %s", uri);
|
GST_DEBUG_OBJECT (typefind, "finding extension of %s", uri);
|
||||||
|
|
||||||
gst_uri = gst_uri_from_string (uri);
|
gst_uri = gst_uri_from_string (uri);
|
||||||
|
|
Loading…
Reference in a new issue