| Index: extensions/browser/api/usb/usb_api.cc
|
| diff --git a/extensions/browser/api/usb/usb_api.cc b/extensions/browser/api/usb/usb_api.cc
|
| index d0238130ee55710cfa1bc28c1da1301fca064a6a..0e33ca51581980c7461a6b99a8128a2e3faf70c7 100644
|
| --- a/extensions/browser/api/usb/usb_api.cc
|
| +++ b/extensions/browser/api/usb/usb_api.cc
|
| @@ -641,13 +641,13 @@ ExtensionFunction::ResponseAction UsbGetUserSelectedDevicesFunction::Run() {
|
| return RespondNow(Error(kErrorNotSupported));
|
| }
|
|
|
| - AddRef();
|
| prompt_->AskForUsbDevices(
|
| - this, extension(), browser_context(), multiple, filters);
|
| + extension(), browser_context(), multiple, filters,
|
| + base::Bind(&UsbGetUserSelectedDevicesFunction::OnDevicesChosen, this));
|
| return RespondLater();
|
| }
|
|
|
| -void UsbGetUserSelectedDevicesFunction::OnUsbDevicesChosen(
|
| +void UsbGetUserSelectedDevicesFunction::OnDevicesChosen(
|
| const std::vector<scoped_refptr<UsbDevice>>& devices) {
|
| scoped_ptr<base::ListValue> result(new base::ListValue());
|
| for (const auto& device : devices) {
|
| @@ -655,7 +655,6 @@ void UsbGetUserSelectedDevicesFunction::OnUsbDevicesChosen(
|
| }
|
|
|
| Respond(OneArgument(result.release()));
|
| - Release();
|
| }
|
|
|
| UsbRequestAccessFunction::UsbRequestAccessFunction() {
|
|
|