Bug 1329568 - Restrict MediaMIMEType to IsMediaMIMEType-checked strings - r?jya
Use IsMediaMIMEType to refuse MIME types that cannot possibly be media-related.
MozReview-Commit-ID: JXhf1biL4L0
--- a/dom/media/MediaMIMETypes.cpp
+++ b/dom/media/MediaMIMETypes.cpp
@@ -23,16 +23,19 @@ MakeMediaMIMEType(const nsAString& aType
nsContentTypeParser parser(aType);
nsAutoString mime;
nsresult rv = parser.GetType(mime);
if (!NS_SUCCEEDED(rv) || mime.IsEmpty()) {
return Nothing();
}
NS_ConvertUTF16toUTF8 mime8{mime};
+ if (!IsMediaMIMEType(mime8)) {
+ return Nothing();
+ }
return Some(MediaMIMEType(mime8));
}
Maybe<MediaMIMEType>
MakeMediaMIMEType(const nsACString& aType)
{
return MakeMediaMIMEType(NS_ConvertUTF8toUTF16(aType));
@@ -98,16 +101,19 @@ MakeMediaExtendedMIMEType(const nsAStrin
nsContentTypeParser parser(aType);
nsAutoString mime;
nsresult rv = parser.GetType(mime);
if (!NS_SUCCEEDED(rv) || mime.IsEmpty()) {
return Nothing();
}
NS_ConvertUTF16toUTF8 mime8{mime};
+ if (!IsMediaMIMEType(mime8)) {
+ return Nothing();
+ }
nsAutoString codecs;
rv = parser.GetParameter("codecs", codecs);
bool haveCodecs = NS_SUCCEEDED(rv);
int32_t width = GetParameterAsNumber(parser, "width", -1);
int32_t height = GetParameterAsNumber(parser, "height", -1);
int32_t framerate = GetParameterAsNumber(parser, "framerate", -1);