Chromium Code Reviews| Index: extensions/browser/api/web_request/web_request_api.cc |
| diff --git a/extensions/browser/api/web_request/web_request_api.cc b/extensions/browser/api/web_request/web_request_api.cc |
| index b04ee7656142448910ea7ca0946aa93a77449397..c85846a3267d1ff5a9eb2cac5f706c3f866315a6 100644 |
| --- a/extensions/browser/api/web_request/web_request_api.cc |
| +++ b/extensions/browser/api/web_request/web_request_api.cc |
| @@ -458,7 +458,7 @@ struct ExtensionWebRequestEventRouter::EventListener { |
| RequestFilter filter; |
| int extra_info_spec; |
| int embedder_process_id; |
| - int webview_instance_id; |
| + int web_view_instance_id; |
|
Devlin
2015/01/21 22:31:45
why the change? It looks like webview is more pop
Fady Samuel
2015/01/21 23:05:41
This matches the naming in extensions/browser/gues
|
| base::WeakPtr<IPC::Sender> ipc_sender; |
| mutable std::set<uint64> blocked_requests; |
| @@ -466,9 +466,25 @@ struct ExtensionWebRequestEventRouter::EventListener { |
| bool operator<(const EventListener& that) const { |
| if (extension_id < that.extension_id) |
|
Devlin
2015/01/21 22:31:45
instead, do:
if (extension_id != that.extension_id
Fady Samuel
2015/01/21 23:05:41
Done.
|
| return true; |
| + |
| + if (extension_id == that.extension_id && |
| + sub_event_name < that.sub_event_name) { |
| + return true; |
| + } |
| + |
| if (extension_id == that.extension_id && |
| - sub_event_name < that.sub_event_name) |
| + sub_event_name == that.sub_event_name && |
| + embedder_process_id < that.embedder_process_id) { |
| return true; |
| + } |
| + |
| + if (extension_id == that.extension_id && |
| + sub_event_name == that.sub_event_name && |
| + embedder_process_id == that.embedder_process_id && |
| + web_view_instance_id < that.web_view_instance_id) { |
| + return true; |
| + } |
| + |
| return false; |
| } |
| @@ -1279,7 +1295,7 @@ bool ExtensionWebRequestEventRouter::AddEventListener( |
| const RequestFilter& filter, |
| int extra_info_spec, |
| int embedder_process_id, |
| - int webview_instance_id, |
| + int web_view_instance_id, |
| base::WeakPtr<IPC::Sender> ipc_sender) { |
| if (!IsWebRequestEvent(event_name)) |
| return false; |
| @@ -1292,8 +1308,8 @@ bool ExtensionWebRequestEventRouter::AddEventListener( |
| listener.extra_info_spec = extra_info_spec; |
| listener.ipc_sender = ipc_sender; |
| listener.embedder_process_id = embedder_process_id; |
| - listener.webview_instance_id = webview_instance_id; |
| - if (listener.webview_instance_id) { |
| + listener.web_view_instance_id = web_view_instance_id; |
| + if (listener.web_view_instance_id) { |
| content::RecordAction( |
| base::UserMetricsAction("WebView.WebRequest.AddListener")); |
| } |
| @@ -1344,7 +1360,7 @@ void ExtensionWebRequestEventRouter::RemoveWebViewEventListeners( |
| void* browser_context, |
| const std::string& extension_id, |
| int embedder_process_id, |
| - int webview_instance_id) { |
| + int web_view_instance_id) { |
| // Iterate over all listeners of all WebRequest events to delete |
| // any listeners that belong to the provided <webview>. |
| ListenerMapForBrowserContext& map_for_browser_context = |
| @@ -1358,7 +1374,7 @@ void ExtensionWebRequestEventRouter::RemoveWebViewEventListeners( |
| listener_iter != listeners.end(); ++listener_iter) { |
| const EventListener& listener = *listener_iter; |
| if (listener.embedder_process_id == embedder_process_id && |
| - listener.webview_instance_id == webview_instance_id) |
| + listener.web_view_instance_id == web_view_instance_id) |
| listeners_to_delete.push_back(listener); |
| } |
| for (size_t i = 0; i < listeners_to_delete.size(); ++i) { |
| @@ -1482,7 +1498,7 @@ void ExtensionWebRequestEventRouter::GetMatchingListenersImpl( |
| if (is_web_view_guest && |
| (it->embedder_process_id != web_view_info.embedder_process_id || |
| - it->webview_instance_id != web_view_info.instance_id)) |
| + it->web_view_instance_id != web_view_info.instance_id)) |
| continue; |
| if (!it->filter.urls.is_empty() && !it->filter.urls.MatchesURL(url)) |
| @@ -2205,8 +2221,8 @@ bool WebRequestInternalAddEventListenerFunction::RunSync() { |
| std::string sub_event_name; |
| EXTENSION_FUNCTION_VALIDATE(args_->GetString(4, &sub_event_name)); |
| - int webview_instance_id = 0; |
| - EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(5, &webview_instance_id)); |
| + int web_view_instance_id = 0; |
| + EXTENSION_FUNCTION_VALIDATE(args_->GetInteger(5, &web_view_instance_id)); |
| base::WeakPtr<extensions::ExtensionMessageFilter> ipc_sender = |
| ipc_sender_weak(); |
| @@ -2218,7 +2234,7 @@ bool WebRequestInternalAddEventListenerFunction::RunSync() { |
| std::string extension_name = |
| extension ? extension->name() : extension_id_safe(); |
| - if (webview_instance_id == 0) { |
| + if (web_view_instance_id == 0) { |
| // We check automatically whether the extension has the 'webRequest' |
| // permission. For blocking calls we require the additional permission |
| // 'webRequestBlocking'. |
| @@ -2249,7 +2265,7 @@ bool WebRequestInternalAddEventListenerFunction::RunSync() { |
| ExtensionWebRequestEventRouter::GetInstance()->AddEventListener( |
| profile_id(), extension_id_safe(), extension_name, |
| event_name, sub_event_name, filter, extra_info_spec, |
| - embedder_process_id, webview_instance_id, ipc_sender_weak()); |
| + embedder_process_id, web_view_instance_id, ipc_sender_weak()); |
| EXTENSION_FUNCTION_VALIDATE(success); |
| helpers::ClearCacheOnNavigation(); |