| 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 220 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 231 for (DictionaryValue::key_iterator key = value.begin_keys(); | 231 for (DictionaryValue::key_iterator key = value.begin_keys(); |
| 232 key != value.end_keys(); ++key) { | 232 key != value.end_keys(); ++key) { |
| 233 if (*key == "urls") { | 233 if (*key == "urls") { |
| 234 ListValue* urls_value = NULL; | 234 ListValue* urls_value = NULL; |
| 235 if (!value.GetList("urls", &urls_value)) | 235 if (!value.GetList("urls", &urls_value)) |
| 236 return false; | 236 return false; |
| 237 for (size_t i = 0; i < urls_value->GetSize(); ++i) { | 237 for (size_t i = 0; i < urls_value->GetSize(); ++i) { |
| 238 std::string url; | 238 std::string url; |
| 239 URLPattern pattern(URLPattern::SCHEME_ALL); | 239 URLPattern pattern(URLPattern::SCHEME_ALL); |
| 240 if (!urls_value->GetString(i, &url) || | 240 if (!urls_value->GetString(i, &url) || |
| 241 pattern.Parse(url, URLPattern::PARSE_STRICT) != | 241 pattern.Parse(url, URLPattern::ERROR_ON_PORTS) != |
| 242 URLPattern::PARSE_SUCCESS) { | 242 URLPattern::PARSE_SUCCESS) { |
| 243 *error = ExtensionErrorUtils::FormatErrorMessage( | 243 *error = ExtensionErrorUtils::FormatErrorMessage( |
| 244 keys::kInvalidRequestFilterUrl, url); | 244 keys::kInvalidRequestFilterUrl, url); |
| 245 return false; | 245 return false; |
| 246 } | 246 } |
| 247 urls.AddPattern(pattern); | 247 urls.AddPattern(pattern); |
| 248 } | 248 } |
| 249 } else if (*key == "types") { | 249 } else if (*key == "types") { |
| 250 ListValue* types_value = NULL; | 250 ListValue* types_value = NULL; |
| 251 if (!value.GetList("types", &types_value)) | 251 if (!value.GetList("types", &types_value)) |
| (...skipping 858 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1110 } | 1110 } |
| 1111 } | 1111 } |
| 1112 } | 1112 } |
| 1113 | 1113 |
| 1114 ExtensionWebRequestEventRouter::GetInstance()->OnEventHandled( | 1114 ExtensionWebRequestEventRouter::GetInstance()->OnEventHandled( |
| 1115 profile_id(), extension_id(), event_name, sub_event_name, request_id, | 1115 profile_id(), extension_id(), event_name, sub_event_name, request_id, |
| 1116 response.release()); | 1116 response.release()); |
| 1117 | 1117 |
| 1118 return true; | 1118 return true; |
| 1119 } | 1119 } |
| OLD | NEW |