diff options
| author | 2023-03-29 20:55:51 +0000 | |
|---|---|---|
| committer | 2023-03-29 21:49:04 +0000 | |
| commit | e2ded2e114d8f30e6a25e434b9d9d20c91d60194 (patch) | |
| tree | 743ab9a8f630d116e4c86829cb8757ff39e7d766 | |
| parent | fbc8c2fb7bc9e5f56b0de1a1f528c6b381fe945d (diff) | |
Handle null buffer when delegating handwriting
Handwriting event buffer can be null when starting handwriting
delegation. handle it gracefully
Fix: 275726998
Bug: 275679219
Test: atest StylusHandwritingTest
Change-Id: I055643c6977de32e2f071f42518b08ab3e14eb10
| -rw-r--r-- | services/core/java/com/android/server/inputmethod/HandwritingModeController.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/inputmethod/HandwritingModeController.java b/services/core/java/com/android/server/inputmethod/HandwritingModeController.java index d54354715d03..bb1a445b52e9 100644 --- a/services/core/java/com/android/server/inputmethod/HandwritingModeController.java +++ b/services/core/java/com/android/server/inputmethod/HandwritingModeController.java @@ -24,8 +24,8 @@ import android.annotation.NonNull; import android.annotation.Nullable; import android.annotation.RequiresPermission; import android.annotation.UiThread; -import android.os.Handler; import android.hardware.input.InputManagerGlobal; +import android.os.Handler; import android.os.IBinder; import android.os.Looper; import android.text.TextUtils; @@ -165,7 +165,11 @@ final class HandwritingModeController { @NonNull String delegatePackageName, @NonNull String delegatorPackageName) { mDelegatePackageName = delegatePackageName; mDelegatorPackageName = delegatorPackageName; - mHandwritingBuffer.ensureCapacity(getHandwritingBufferSize()); + if (mHandwritingBuffer == null) { + mHandwritingBuffer = new ArrayList<>(getHandwritingBufferSize()); + } else { + mHandwritingBuffer.ensureCapacity(getHandwritingBufferSize()); + } scheduleHandwritingDelegationTimeout(); } |