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

Commit 998a2bbb authored by zhuning3's avatar zhuning3 Committed by ning zhu
Browse files

Fix nullptr exception when using do-while



Using of 'instanceof' cannot determine whether 'nextParent' is non-null during the first loop in do-while, so when 'focused.getParent()' outside the loop returns null, the loop body will trigger a null pointer exception. Therefore, the conditional judgment needs to be covered in every loop.

Test:UAT
Bug: 336205346

Change-Id: I78374410d928009ea9b99630cae2fbea24ba8ab6
Signed-off-by: default avatarzhuning3 <zhuning3@xiaomi.corp-partner.google.com>
parent c40bde3f
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -129,7 +129,7 @@ public class FocusFinder {
        }
        ViewGroup effective = null;
        ViewParent nextParent = focused.getParent();
        do {
        while (nextParent instanceof ViewGroup) {
            if (nextParent == root) {
                return effective != null ? effective : root;
            }
@@ -143,7 +143,7 @@ public class FocusFinder {
                effective = vg;
            }
            nextParent = nextParent.getParent();
        } while (nextParent instanceof ViewGroup);
        }
        return root;
    }