Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d0bd08b4 authored by lpeter's avatar lpeter
Browse files

Add try-catch for the augmented autofill UI to avoid crashing

It is hard to reproduce this issue, it would better add try-catch
for the augmented autofill UI as regular autofill UI did.

Bug: 149744098
Test: atest CtsAutoFillServiceTestCases
Change-Id: I808ac48476ef96b8944e762dd5c41413da3a2c2e
parent b74c1ad2
Loading
Loading
Loading
Loading
+18 −8
Original line number Diff line number Diff line
@@ -208,6 +208,7 @@ public final class FillWindow implements AutoCloseable {
        if (sDebug) Log.d(TAG, "handleShow()");
        synchronized (mLock) {
            if (mWm != null && mFillView != null) {
                try {
                    p.flags |= WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH;
                    if (!mShowing) {
                        mWm.addView(mFillView, p);
@@ -215,6 +216,11 @@ public final class FillWindow implements AutoCloseable {
                    } else {
                        mWm.updateViewLayout(mFillView, p);
                    }
                } catch (WindowManager.BadTokenException e) {
                    if (sDebug) Log.d(TAG, "Filed with token " + p.token + " gone.");
                } catch (IllegalStateException e) {
                    if (sDebug) Log.d(TAG, "Exception showing window.");
                }
            }
        }
    }
@@ -223,8 +229,12 @@ public final class FillWindow implements AutoCloseable {
        if (sDebug) Log.d(TAG, "handleHide()");
        synchronized (mLock) {
            if (mWm != null && mFillView != null && mShowing) {
                try {
                    mWm.removeView(mFillView);
                    mShowing = false;
                } catch (IllegalStateException e) {
                    if (sDebug) Log.d(TAG, "Exception hiding window.");
                }
            }
        }
    }