Swap out handle list in UsbDeviceImpl::OnDisconnect.
Swap out handle list in UsbDeviceImpl::OnDisconnect.

UsbDeviceHandleImpl::Close() will notify the UsbDeviceImpl that it is
closing by calling HandleClosed(). This causes trouble for OnDisconnect
because it is already iterating over the list of open handles. To avoid
concurrent modification we can simply swap out the list before closing
any handles.

BUG=601458

Review URL: https://codereview.chromium.org/1870513003

Cr-Commit-Position: 972c6d2dc6dd5efdad1377c0d224e03eb8f276f7@{#385867}

axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk,axinging/chromium-crosswalk