OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/extensions/extension_webrequest_api.h" | 5 #include "chrome/browser/extensions/extension_webrequest_api.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/json/json_writer.h" | 9 #include "base/json/json_writer.h" |
10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 for (DictionaryValue::key_iterator key = value.begin_keys(); | 220 for (DictionaryValue::key_iterator key = value.begin_keys(); |
221 key != value.end_keys(); ++key) { | 221 key != value.end_keys(); ++key) { |
222 if (*key == "urls") { | 222 if (*key == "urls") { |
223 ListValue* urls_value = NULL; | 223 ListValue* urls_value = NULL; |
224 if (!value.GetList("urls", &urls_value)) | 224 if (!value.GetList("urls", &urls_value)) |
225 return false; | 225 return false; |
226 for (size_t i = 0; i < urls_value->GetSize(); ++i) { | 226 for (size_t i = 0; i < urls_value->GetSize(); ++i) { |
227 std::string url; | 227 std::string url; |
228 URLPattern pattern(URLPattern::SCHEME_ALL); | 228 URLPattern pattern(URLPattern::SCHEME_ALL); |
229 if (!urls_value->GetString(i, &url) || | 229 if (!urls_value->GetString(i, &url) || |
230 pattern.Parse(url, URLPattern::PARSE_STRICT) != | 230 pattern.Parse(url, URLPattern::ERROR_ON_PORTS) != |
231 URLPattern::PARSE_SUCCESS) { | 231 URLPattern::PARSE_SUCCESS) { |
232 *error = ExtensionErrorUtils::FormatErrorMessage( | 232 *error = ExtensionErrorUtils::FormatErrorMessage( |
233 keys::kInvalidRequestFilterUrl, url); | 233 keys::kInvalidRequestFilterUrl, url); |
234 return false; | 234 return false; |
235 } | 235 } |
236 urls.AddPattern(pattern); | 236 urls.AddPattern(pattern); |
237 } | 237 } |
238 } else if (*key == "types") { | 238 } else if (*key == "types") { |
239 ListValue* types_value = NULL; | 239 ListValue* types_value = NULL; |
240 if (!value.GetList("types", &types_value)) | 240 if (!value.GetList("types", &types_value)) |
(...skipping 832 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1073 } | 1073 } |
1074 } | 1074 } |
1075 } | 1075 } |
1076 | 1076 |
1077 ExtensionWebRequestEventRouter::GetInstance()->OnEventHandled( | 1077 ExtensionWebRequestEventRouter::GetInstance()->OnEventHandled( |
1078 profile_id(), extension_id(), event_name, sub_event_name, request_id, | 1078 profile_id(), extension_id(), event_name, sub_event_name, request_id, |
1079 response.release()); | 1079 response.release()); |
1080 | 1080 |
1081 return true; | 1081 return true; |
1082 } | 1082 } |
OLD | NEW |