Index: chrome/browser/devtools/devtools_targets_ui.cc |
diff --git a/chrome/browser/devtools/devtools_targets_ui.cc b/chrome/browser/devtools/devtools_targets_ui.cc |
index ced9c166332962971b7f06d4dbfc2ec0b93e3367..3808103ca4bb5837a962156dd6a1c839119fede1 100644 |
--- a/chrome/browser/devtools/devtools_targets_ui.cc |
+++ b/chrome/browser/devtools/devtools_targets_ui.cc |
@@ -293,18 +293,19 @@ AdbTargetsUIHandler::AdbTargetsUIHandler(const Callback& callback, |
profile_(profile), |
android_bridge_( |
DevToolsAndroidBridge::Factory::GetForProfile(profile_)) { |
- DCHECK(android_bridge_); |
- android_bridge_->AddDeviceListListener(this); |
+ if (android_bridge_) |
+ android_bridge_->AddDeviceListListener(this); |
} |
AdbTargetsUIHandler::~AdbTargetsUIHandler() { |
- android_bridge_->RemoveDeviceListListener(this); |
+ if (android_bridge_) |
+ android_bridge_->RemoveDeviceListListener(this); |
} |
void AdbTargetsUIHandler::Open(const std::string& browser_id, |
const std::string& url) { |
RemoteBrowsers::iterator it = remote_browsers_.find(browser_id); |
- if (it != remote_browsers_.end()) |
+ if (it != remote_browsers_.end() && android_bridge_) |
android_bridge_->OpenRemotePage(it->second, url); |
} |
@@ -312,8 +313,8 @@ scoped_refptr<content::DevToolsAgentHost> |
AdbTargetsUIHandler::GetBrowserAgentHost( |
const std::string& browser_id) { |
RemoteBrowsers::iterator it = remote_browsers_.find(browser_id); |
- if (it == remote_browsers_.end()) |
- return NULL; |
+ if (it == remote_browsers_.end() || !android_bridge_) |
+ return nullptr; |
return android_bridge_->GetBrowserAgentHost(it->second); |
} |
@@ -322,6 +323,8 @@ void AdbTargetsUIHandler::DeviceListChanged( |
const DevToolsAndroidBridge::RemoteDevices& devices) { |
remote_browsers_.clear(); |
STLDeleteValues(&targets_); |
+ if (!android_bridge_) |
+ return; |
base::ListValue device_list; |
for (DevToolsAndroidBridge::RemoteDevices::const_iterator dit = |