From 72c3f2bf276b4344e0fb3c29f70a9c3cfca5d75d Mon Sep 17 00:00:00 2001 From: TYM Tsai Date: Wed, 3 Jul 2019 15:57:09 +0800 Subject: [PATCH] Fixed canceling fill request caused removal current session A quick switch focus causes the fill request to be canceled and the current session is deleted when it is considered to be a failure. The new fill request will not work after that. To prevent this issue, this change is to avoid cancelng request is treated as a failure. Fixes: 135486325 Test: atest CtsAutoFillServiceTestCases Change-Id: I213f79da5b248e46f5be1a940ceebb7ee99e00f3 --- .../java/com/android/server/autofill/RemoteFillService.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/services/autofill/java/com/android/server/autofill/RemoteFillService.java b/services/autofill/java/com/android/server/autofill/RemoteFillService.java index 44f19ffe19048..5a9320f61b389 100644 --- a/services/autofill/java/com/android/server/autofill/RemoteFillService.java +++ b/services/autofill/java/com/android/server/autofill/RemoteFillService.java @@ -187,10 +187,9 @@ final class RemoteFillService extends ServiceConnector.Impl { if (err instanceof TimeoutException) { dispatchCancellationSignal(cancellationSink.get()); mCallbacks.onFillRequestTimeout(request.getId()); + } else if (err instanceof CancellationException) { + dispatchCancellationSignal(cancellationSink.get()); } else { - if (err instanceof CancellationException) { - dispatchCancellationSignal(cancellationSink.get()); - } mCallbacks.onFillRequestFailure(request.getId(), err.getMessage()); } }