Fix NPE due to the lack of null-check
The case that was not coverted well is that CursorAnchorInfoCompatWrapper could be instantiated with null object. In such situations, we should do nothing. BUG: 17682582 Change-Id: I6625a2f0ed8c5580ed9edfe4728f342da77a8e40
This commit is contained in:
parent
be4e0d0e39
commit
de12c1bf49
2 changed files with 4 additions and 4 deletions
|
@ -84,8 +84,8 @@ public final class CursorAnchorInfoCompatWrapper {
|
|||
}
|
||||
|
||||
@UsedForTesting
|
||||
public static boolean isAvailable() {
|
||||
return sCursorAnchorInfoClass.exists();
|
||||
public boolean isAvailable() {
|
||||
return sCursorAnchorInfoClass.exists() && mInstance != null;
|
||||
}
|
||||
|
||||
private Object mInstance;
|
||||
|
@ -96,7 +96,7 @@ public final class CursorAnchorInfoCompatWrapper {
|
|||
|
||||
@UsedForTesting
|
||||
public static CursorAnchorInfoCompatWrapper fromObject(final Object instance) {
|
||||
if (!isAvailable()) {
|
||||
if (!sCursorAnchorInfoClass.exists()) {
|
||||
return new CursorAnchorInfoCompatWrapper(null);
|
||||
}
|
||||
return new CursorAnchorInfoCompatWrapper(instance);
|
||||
|
|
|
@ -182,7 +182,7 @@ public class TextDecorator {
|
|||
private void layoutMain() {
|
||||
final CursorAnchorInfoCompatWrapper info = mCursorAnchorInfoWrapper;
|
||||
|
||||
if (info == null) {
|
||||
if (info == null || !info.isAvailable()) {
|
||||
cancelLayoutInternalExpectedly("CursorAnchorInfo isn't available.");
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue