From 780a64694d21c61e0bffa23e6d6016c378ecc307 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Tue, 17 Oct 2017 00:07:51 -0700 Subject: [PATCH] Fix NPE when input device is removed during enumeration --- .../com/limelight/binding/input/driver/UsbDriverService.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/src/main/java/com/limelight/binding/input/driver/UsbDriverService.java b/app/src/main/java/com/limelight/binding/input/driver/UsbDriverService.java index 992d5106..16da84b9 100644 --- a/app/src/main/java/com/limelight/binding/input/driver/UsbDriverService.java +++ b/app/src/main/java/com/limelight/binding/input/driver/UsbDriverService.java @@ -151,6 +151,10 @@ public class UsbDriverService extends Service implements UsbDriverListener { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { for (int id : InputDevice.getDeviceIds()) { InputDevice inputDev = InputDevice.getDevice(id); + if (inputDev == null) { + // Device was removed while looping + continue; + } if (inputDev.getVendorId() == device.getVendorId() && inputDev.getProductId() == device.getProductId()) {