Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b82963f3 authored by Paul McLean's avatar Paul McLean
Browse files

Catch exception in descriptor parser causes device connection to be skipped.

Bug: 63538159

Test: Manual - force an exception and verify the the device is still available.
Change-Id: I4f4c59d4d0f73b664fac8bc74a64414d0e9d9a24
parent bc0afda3
Loading
Loading
Loading
Loading
+8 −4
Original line number Diff line number Diff line
@@ -261,12 +261,16 @@ public class UsbHostManager {
                }
                // deviceName is something like: "/dev/bus/usb/001/001"
                UsbDescriptorParser parser = new UsbDescriptorParser();
                boolean isInputHeadset = false;
                boolean isOutputHeadset = false;
                if (parser.parseDevice(mNewDevice.getDeviceName())) {
                    Slog.i(TAG, "---- isHeadset[in:" + parser.isInputHeadset()
                            + " , out:" + parser.isOutputHeadset() + "]");
                    mUsbAlsaManager.usbDeviceAdded(mNewDevice,
                            parser.isInputHeadset(), parser.isOutputHeadset());
                    isInputHeadset = parser.isInputHeadset();
                    isOutputHeadset = parser.isOutputHeadset();
                    Slog.i(TAG, "---- isHeadset[in:" + isInputHeadset
                            + " , out:" + isOutputHeadset + "]");
                }
                mUsbAlsaManager.usbDeviceAdded(mNewDevice,
                        isInputHeadset, isOutputHeadset);
            } else {
                Slog.e(TAG, "mNewDevice is null in endUsbDeviceAdded");
            }