aboutsummaryrefslogtreecommitdiffstats
path: root/components/net/file_loader.rs
diff options
context:
space:
mode:
authorKeith Yeung <kungfukeith11@gmail.com>2015-11-19 14:27:49 -0800
committerKeith Yeung <kungfukeith11@gmail.com>2015-11-24 11:52:35 -0800
commitaf705a6faf19235b55e722fb85e240e36e7ad686 (patch)
tree345a4b105994dd8cd712206354592571b77da143 /components/net/file_loader.rs
parenta5babb89a02b9b84a8cd62554a5ceef9efb0d481 (diff)
downloadservo-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.rs9
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,