diff options
author | 2024-04-03 02:08:31 +0000 | |
---|---|---|
committer | 2024-04-03 02:08:31 +0000 | |
commit | dbb963c12a56f1980ba8fef6a1006fb1946eb558 (patch) | |
tree | 61be72c5571086880a4574d84d251fa15c5b968d | |
parent | c2e0b64f8b9c4a8b35b168567f10f6b8c0556318 (diff) | |
parent | 24ce9bae61783ef85ca123eb87e800c5a9e572dd (diff) |
Merge "UsbService:update mUsbDisableRequesters for enableUsbDataWhileDocked()" into main
-rw-r--r-- | services/usb/java/com/android/server/usb/UsbService.java | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/services/usb/java/com/android/server/usb/UsbService.java b/services/usb/java/com/android/server/usb/UsbService.java index 2da352d43290..9b5612eacc13 100644 --- a/services/usb/java/com/android/server/usb/UsbService.java +++ b/services/usb/java/com/android/server/usb/UsbService.java @@ -894,7 +894,14 @@ public class UsbService extends IUsbManager.Stub { mContext.enforceCallingOrSelfPermission(android.Manifest.permission.MANAGE_USB, null); if (android.hardware.usb.flags.Flags.enableUsbDataSignalStaking()) { - if (!shouldUpdateUsbSignaling(portId, enable, Binder.getCallingUid())) return false; + if (!shouldUpdateUsbSignaling(portId, enable, Binder.getCallingUid())) { + try { + callback.onOperationComplete(USB_OPERATION_ERROR_INTERNAL); + } catch (RemoteException e) { + Slog.e(TAG, "enableUsbData: Failed to call onOperationComplete", e); + } + return false; + } } final long ident = Binder.clearCallingIdentity(); @@ -950,8 +957,19 @@ public class UsbService extends IUsbManager.Stub { "enableUsbDataWhileDocked: callback must not be null. opId:" + operationId); mContext.enforceCallingOrSelfPermission(android.Manifest.permission.MANAGE_USB, null); + + if (android.hardware.usb.flags.Flags.enableUsbDataSignalStaking()) { + if (!shouldUpdateUsbSignaling(portId, true, Binder.getCallingUid())) { + try { + callback.onOperationComplete(USB_OPERATION_ERROR_INTERNAL); + } catch (RemoteException e) { + Slog.e(TAG, "enableUsbDataWhileDocked: Failed to call onOperationComplete", e); + } + return; + } + } + final long ident = Binder.clearCallingIdentity(); - boolean wait; try { if (mPortManager != null) { mPortManager.enableUsbDataWhileDocked(portId, operationId, callback, null); |