Index: extensions/shell/browser/shell_device_client.cc |
diff --git a/extensions/shell/browser/shell_device_client.cc b/extensions/shell/browser/shell_device_client.cc |
index ae006661e78193d96cc7a122b1ef8f031b028407..857e2a4f2fcff25d6a4027bc26533ddf4f3fa65e 100644 |
--- a/extensions/shell/browser/shell_device_client.cc |
+++ b/extensions/shell/browser/shell_device_client.cc |
@@ -29,8 +29,11 @@ device::UsbService* ShellDeviceClient::GetUsbService() { |
device::HidService* ShellDeviceClient::GetHidService() { |
DCHECK_CURRENTLY_ON(BrowserThread::UI); |
- return device::HidService::GetInstance( |
- BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE)); |
+ if (!hid_service_) { |
+ hid_service_ = device::HidService::Create( |
+ BrowserThread::GetMessageLoopProxyForThread(BrowserThread::FILE)); |
+ } |
+ return hid_service_.get(); |
} |
} |