Index: device/usb/usb_device_handle_android.cc |
diff --git a/device/usb/usb_device_handle_android.cc b/device/usb/usb_device_handle_android.cc |
index e2e0dc03d8916f15dced5183d73b0d485be5a23f..d5dce7a8e0f842d6e7029ac7a023fa108613183d 100644 |
--- a/device/usb/usb_device_handle_android.cc |
+++ b/device/usb/usb_device_handle_android.cc |
@@ -21,6 +21,8 @@ scoped_refptr<UsbDeviceHandleAndroid> UsbDeviceHandleAndroid::Create( |
const base::android::JavaRef<jobject>& usb_connection) { |
ScopedJavaLocalRef<jobject> wrapper = |
Java_ChromeUsbConnection_create(env, usb_connection); |
+ // C++ doesn't own this file descriptor so CloseBlocking() is overridden |
+ // below to release it without closing it. |
base::ScopedFD fd(Java_ChromeUsbConnection_getFileDescriptor(env, wrapper)); |
return make_scoped_refptr(new UsbDeviceHandleAndroid( |
device, std::move(fd), blocking_task_runner, wrapper)); |