Index: chrome/browser/chromeos/extensions/launcher_search_provider.cc |
diff --git a/chrome/browser/chromeos/extensions/launcher_search_provider.cc b/chrome/browser/chromeos/extensions/launcher_search_provider.cc |
index d89bf2ad5962afbfda040e7a4638830df50b3205..139a6f85ec11cdd7c28604232f51b7043077f168 100644 |
--- a/chrome/browser/chromeos/extensions/launcher_search_provider.cc |
+++ b/chrome/browser/chromeos/extensions/launcher_search_provider.cc |
@@ -4,8 +4,11 @@ |
#include "chrome/browser/chromeos/extensions/launcher_search_provider.h" |
+#include "chrome/browser/chromeos/launcher_search_provider/error_reporter.h" |
#include "chrome/browser/chromeos/launcher_search_provider/service.h" |
#include "chrome/common/extensions/api/launcher_search_provider.h" |
+#include "content/public/browser/render_frame_host.h" |
+#include "content/public/browser/render_view_host.h" |
namespace extensions { |
@@ -19,8 +22,24 @@ bool LauncherSearchProviderSetSearchResultsFunction::RunSync() { |
const scoped_ptr<Params> params(Params::Create(*args_)); |
EXTENSION_FUNCTION_VALIDATE(params); |
+ // Either render_view_host or render_frame_host will be set. See |
+ // crbug.com/304341. |
+ IPC::Sender* sender = nullptr; |
+ int routing_id = 0; |
+ if (render_view_host()) { |
+ sender = render_view_host(); |
+ routing_id = render_view_host()->GetRoutingID(); |
+ } else { |
+ sender = render_frame_host(); |
+ routing_id = render_frame_host()->GetRoutingID(); |
+ } |
+ CHECK(sender); |
satorux1
2015/04/24 01:31:18
CHECK -> DCHECK
yawano
2015/05/01 06:09:54
Done.
|
+ |
+ chromeos::launcher_search_provider::ErrorReporter error_reporter(sender, |
Matt Giuca
2015/04/24 04:26:46
Have you tested the loading error case (the error
yawano
2015/05/01 06:09:54
Changed this to scoped_refptr since multiple resul
|
+ routing_id); |
Service* const service = Service::Get(GetProfile()); |
- service->SetSearchResults(extension(), params->query_id, params->results); |
+ service->SetSearchResults(extension(), error_reporter, params->query_id, |
+ params->results); |
return true; |
} |