diff options
| author | TreeHugger Robot <treehugger-gerrit@google.com> | 2019-08-22 21:16:59 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2019-08-22 21:16:59 +0000 |
| commit | 8247b5f5a6cdcb791f62d9dfbc96be509f22cb54 (patch) | |
| tree | 02ed81c8ec52e0a09c393e22982a449c4b55b589 /core/java | |
| parent | d4c175c156374f1b4a3a436d5dc11ece7394dce1 (diff) | |
| parent | 7ba3fd45461b2140ba291466e9420097aa8926cc (diff) | |
Merge "Hold a strong reference to the callback in TextClassifierService" into qt-qpr1-dev
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/service/textclassifier/TextClassifierService.java | 18 | ||||
| -rw-r--r-- | core/java/android/widget/SelectionActionModeHelper.java | 1 |
2 files changed, 5 insertions, 14 deletions
diff --git a/core/java/android/service/textclassifier/TextClassifierService.java b/core/java/android/service/textclassifier/TextClassifierService.java index 30c4e900f83c..bb39be2b2cf0 100644 --- a/core/java/android/service/textclassifier/TextClassifierService.java +++ b/core/java/android/service/textclassifier/TextClassifierService.java @@ -51,7 +51,6 @@ import android.view.textclassifier.TextSelection; import com.android.internal.util.Preconditions; -import java.lang.ref.WeakReference; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -431,23 +430,18 @@ public abstract class TextClassifierService extends Service { * Forwards the callback result to a wrapped binder callback. */ private static final class ProxyCallback<T extends Parcelable> implements Callback<T> { - private WeakReference<ITextClassifierCallback> mTextClassifierCallback; + private ITextClassifierCallback mTextClassifierCallback; private ProxyCallback(ITextClassifierCallback textClassifierCallback) { - mTextClassifierCallback = - new WeakReference<>(Preconditions.checkNotNull(textClassifierCallback)); + mTextClassifierCallback = Preconditions.checkNotNull(textClassifierCallback); } @Override public void onSuccess(T result) { - ITextClassifierCallback callback = mTextClassifierCallback.get(); - if (callback == null) { - return; - } try { Bundle bundle = new Bundle(1); bundle.putParcelable(KEY_RESULT, result); - callback.onSuccess(bundle); + mTextClassifierCallback.onSuccess(bundle); } catch (RemoteException e) { Slog.d(LOG_TAG, "Error calling callback"); } @@ -455,12 +449,8 @@ public abstract class TextClassifierService extends Service { @Override public void onFailure(CharSequence error) { - ITextClassifierCallback callback = mTextClassifierCallback.get(); - if (callback == null) { - return; - } try { - callback.onFailure(); + mTextClassifierCallback.onFailure(); } catch (RemoteException e) { Slog.d(LOG_TAG, "Error calling callback"); } diff --git a/core/java/android/widget/SelectionActionModeHelper.java b/core/java/android/widget/SelectionActionModeHelper.java index 51ca80524090..d0f80936f477 100644 --- a/core/java/android/widget/SelectionActionModeHelper.java +++ b/core/java/android/widget/SelectionActionModeHelper.java @@ -999,6 +999,7 @@ public final class SelectionActionModeHelper { } private void onTimeOut() { + Log.d(LOG_TAG, "Timeout in TextClassificationAsyncTask"); if (getStatus() == Status.RUNNING) { onPostExecute(mTimeOutResultSupplier.get()); } |
