Commit dd04950b authored by Hesen Zhang's avatar Hesen Zhang Committed by Commit Bot

Fix crash of query tiles internals in incognito mode.

- TileService not support incognito profile.

Bug: 1110285
Change-Id: Ief1c8025b74ec5df94c5e811d213a6679fd6069c
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2324938Reviewed-by: default avatarMin Qin <qinmin@chromium.org>
Commit-Queue: Hesen Zhang <hesen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#792500}
parent 0a47b5b4
...@@ -19,9 +19,7 @@ ...@@ -19,9 +19,7 @@
QueryTilesInternalsUIMessageHandler::QueryTilesInternalsUIMessageHandler( QueryTilesInternalsUIMessageHandler::QueryTilesInternalsUIMessageHandler(
Profile* profile) Profile* profile)
: tile_service_(query_tiles::TileServiceFactory::GetForKey( : tile_service_(query_tiles::TileServiceFactory::GetForKey(
profile->GetProfileKey())) { profile->GetProfileKey())) {}
DCHECK(tile_service_);
}
QueryTilesInternalsUIMessageHandler::~QueryTilesInternalsUIMessageHandler() = QueryTilesInternalsUIMessageHandler::~QueryTilesInternalsUIMessageHandler() =
default; default;
...@@ -54,6 +52,8 @@ void QueryTilesInternalsUIMessageHandler::RegisterMessages() { ...@@ -54,6 +52,8 @@ void QueryTilesInternalsUIMessageHandler::RegisterMessages() {
void QueryTilesInternalsUIMessageHandler::HandleGetTileData( void QueryTilesInternalsUIMessageHandler::HandleGetTileData(
const base::ListValue* args) { const base::ListValue* args) {
if (!tile_service_)
return;
AllowJavascript(); AllowJavascript();
const base::Value* callback_id; const base::Value* callback_id;
auto result = args->Get(0, &callback_id); auto result = args->Get(0, &callback_id);
...@@ -64,6 +64,8 @@ void QueryTilesInternalsUIMessageHandler::HandleGetTileData( ...@@ -64,6 +64,8 @@ void QueryTilesInternalsUIMessageHandler::HandleGetTileData(
void QueryTilesInternalsUIMessageHandler::HandleGetServiceStatus( void QueryTilesInternalsUIMessageHandler::HandleGetServiceStatus(
const base::ListValue* args) { const base::ListValue* args) {
if (!tile_service_)
return;
AllowJavascript(); AllowJavascript();
const base::Value* callback_id; const base::Value* callback_id;
auto result = args->Get(0, &callback_id); auto result = args->Get(0, &callback_id);
...@@ -74,6 +76,8 @@ void QueryTilesInternalsUIMessageHandler::HandleGetServiceStatus( ...@@ -74,6 +76,8 @@ void QueryTilesInternalsUIMessageHandler::HandleGetServiceStatus(
void QueryTilesInternalsUIMessageHandler::HandleStartFetch( void QueryTilesInternalsUIMessageHandler::HandleStartFetch(
const base::ListValue* args) { const base::ListValue* args) {
if (!tile_service_)
return;
AllowJavascript(); AllowJavascript();
tile_service_->StartFetchForTiles(false /*is_from_reduce_mode*/, tile_service_->StartFetchForTiles(false /*is_from_reduce_mode*/,
base::BindOnce([](bool reschedule) {})); base::BindOnce([](bool reschedule) {}));
...@@ -81,11 +85,14 @@ void QueryTilesInternalsUIMessageHandler::HandleStartFetch( ...@@ -81,11 +85,14 @@ void QueryTilesInternalsUIMessageHandler::HandleStartFetch(
void QueryTilesInternalsUIMessageHandler::HandlePurgeDb( void QueryTilesInternalsUIMessageHandler::HandlePurgeDb(
const base::ListValue* args) { const base::ListValue* args) {
tile_service_->PurgeDb(); if (tile_service_)
tile_service_->PurgeDb();
} }
void QueryTilesInternalsUIMessageHandler::HandleSetServerUrl( void QueryTilesInternalsUIMessageHandler::HandleSetServerUrl(
const base::ListValue* args) { const base::ListValue* args) {
if (!tile_service_)
return;
AllowJavascript(); AllowJavascript();
DCHECK_EQ(args->GetList().size(), 1u) << "Missing argument server URL."; DCHECK_EQ(args->GetList().size(), 1u) << "Missing argument server URL.";
tile_service_->SetServerUrl(args->GetList()[0].GetString()); tile_service_->SetServerUrl(args->GetList()[0].GetString());
...@@ -102,7 +109,8 @@ void QueryTilesInternalsUIMessageHandler::OnTileDataAvailable( ...@@ -102,7 +109,8 @@ void QueryTilesInternalsUIMessageHandler::OnTileDataAvailable(
} }
void QueryTilesInternalsUIMessageHandler::OnJavascriptAllowed() { void QueryTilesInternalsUIMessageHandler::OnJavascriptAllowed() {
logger_observer_.Add(tile_service_->GetLogger()); if (tile_service_)
logger_observer_.Add(tile_service_->GetLogger());
} }
void QueryTilesInternalsUIMessageHandler::OnJavascriptDisallowed() { void QueryTilesInternalsUIMessageHandler::OnJavascriptDisallowed() {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment