Chromium Code Reviews| Index: chrome/browser/download/download_extension_api.cc |
| diff --git a/chrome/browser/download/download_extension_api.cc b/chrome/browser/download/download_extension_api.cc |
| index 48006b83ce1ae96bdbcd98f17722a4bffec249a1..72d9506fabe7e65c3a37402af235a4ec3605b2c9 100644 |
| --- a/chrome/browser/download/download_extension_api.cc |
| +++ b/chrome/browser/download/download_extension_api.cc |
| @@ -381,6 +381,14 @@ bool DownloadsDownloadFunction::ParseArgs() { |
| return false; |
| } |
| + if (!iodata_->url.SchemeIs("data") && |
| + !iodata_->url.SchemeIs("filesystem") && |
|
Aaron Boodman
2012/05/02 22:52:07
Isn't this a way to circumvent host permissions? T
ericu
2012/05/02 23:26:32
Yeah, this isn't right. Just take !iodata_->url.S
|
| + !iodata_->url.SchemeIs("blob") && |
| + !GetExtension()->HasHostPermission(iodata_->url)) { |
| + error_ = download_extension_errors::kInvalidURLError; |
| + return false; |
| + } |
| + |
| if (options->HasKey(kFilenameKey)) { |
| EXTENSION_FUNCTION_VALIDATE(options->GetString( |
| kFilenameKey, &iodata_->filename)); |