diff options
author | Keith Yeung <kungfukeith11@gmail.com> | 2015-11-19 14:27:49 -0800 |
---|---|---|
committer | Keith Yeung <kungfukeith11@gmail.com> | 2015-11-24 11:52:35 -0800 |
commit | af705a6faf19235b55e722fb85e240e36e7ad686 (patch) | |
tree | 345a4b105994dd8cd712206354592571b77da143 /components/net/file_loader.rs | |
parent | a5babb89a02b9b84a8cd62554a5ceef9efb0d481 (diff) | |
download | servo-af705a6faf19235b55e722fb85e240e36e7ad686.tar.gz servo-af705a6faf19235b55e722fb85e240e36e7ad686.zip |
Add content_type to metadata in file_loader
Diffstat (limited to 'components/net/file_loader.rs')
-rw-r--r-- | components/net/file_loader.rs | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/components/net/file_loader.rs b/components/net/file_loader.rs index a4348049d78..1519ec31b2d 100644 --- a/components/net/file_loader.rs +++ b/components/net/file_loader.rs @@ -3,6 +3,7 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ use mime_classifier::MIMEClassifier; +use mime_guess::guess_mime_type; use net_traits::ProgressMsg::{Done, Payload}; use net_traits::{LoadConsumer, LoadData, Metadata}; use resource_task::{CancellationListener, ProgressSender}; @@ -70,7 +71,9 @@ pub fn factory(load_data: LoadData, } match read_block(reader) { Ok(ReadStatus::Partial(buf)) => { - let metadata = Metadata::default(url); + let mut metadata = Metadata::default(url); + let mime_type = guess_mime_type(file_path.as_path()); + metadata.set_content_type(Some(&mime_type)); let progress_chan = start_sending_sniffed(senders, metadata, classifier, &buf); progress_chan.send(Payload(buf)).unwrap(); @@ -83,7 +86,9 @@ pub fn factory(load_data: LoadData, } } Ok(ReadStatus::EOF) => { - let metadata = Metadata::default(url); + let mut metadata = Metadata::default(url); + let mime_type = guess_mime_type(file_path.as_path()); + metadata.set_content_type(Some(&mime_type)); if let Ok(chan) = start_sending_sniffed_opt(senders, metadata, classifier, |