Handle invalid MIME types in HTMLMediaElement::CanPlayType

This commit is contained in:
Anthony Ramine 2017-09-15 10:09:22 +02:00
parent bd9486bbe2
commit 7e835c351e
2 changed files with 9 additions and 6 deletions

View file

@ -32,6 +32,7 @@ use html5ever::{LocalName, Prefix};
use ipc_channel::ipc; use ipc_channel::ipc;
use ipc_channel::router::ROUTER; use ipc_channel::router::ROUTER;
use microtask::{Microtask, MicrotaskRunnable}; use microtask::{Microtask, MicrotaskRunnable};
use mime::{Mime, SubLevel, TopLevel};
use net_traits::{FetchResponseListener, FetchMetadata, Metadata, NetworkError}; use net_traits::{FetchResponseListener, FetchMetadata, Metadata, NetworkError};
use net_traits::request::{CredentialsMode, Destination, RequestInit, Type as RequestType}; use net_traits::request::{CredentialsMode, Destination, RequestInit, Type as RequestType};
use network_listener::{NetworkListener, PreInvoke}; use network_listener::{NetworkListener, PreInvoke};
@ -644,9 +645,14 @@ impl HTMLMediaElementMethods for HTMLMediaElement {
} }
// https://html.spec.whatwg.org/multipage/#dom-navigator-canplaytype // https://html.spec.whatwg.org/multipage/#dom-navigator-canplaytype
fn CanPlayType(&self, _type_: DOMString) -> CanPlayTypeResult { fn CanPlayType(&self, type_: DOMString) -> CanPlayTypeResult {
// TODO: application/octet-stream match type_.parse::<Mime>() {
CanPlayTypeResult::Maybe Ok(Mime(TopLevel::Application, SubLevel::OctetStream, _)) |
Err(_) => {
CanPlayTypeResult::_empty
},
_ => CanPlayTypeResult::Maybe
}
} }
// https://html.spec.whatwg.org/multipage/#dom-media-error // https://html.spec.whatwg.org/multipage/#dom-media-error

View file

@ -1,8 +1,5 @@
[canPlayType.html] [canPlayType.html]
type: testharness type: testharness
[application/octet-stream]
expected: FAIL
[video/x-new-fictional-format] [video/x-new-fictional-format]
expected: FAIL expected: FAIL