Skip to content

Commit d984dea

Browse files
cortinicofacebook-github-bot
authored andcommitted
Add @nullable to ScrollView getChildVisibleRect offset parameter
Summary: The `offset` parameter in `getChildVisibleRect` overrides was missing the `Nullable` annotation. The Android framework contract for `ViewGroup.getChildVisibleRect(View, Rect, Point)` allows `offset` to be null, and `View.getGlobalVisibleRect(Rect)` legitimately passes null. The `Nullsafe` instrumentation injected a non-null assertion that crashed when null was passed. Changelog: [Android][Fixed] - Fix NullPointerException in ScrollView `getChildVisibleRect` when `offset` is null Differential Revision: D107507935
1 parent 3fd8e9b commit d984dea

3 files changed

Lines changed: 3 additions & 3 deletions

File tree

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1054,7 +1054,7 @@ public void getClippingRect(Rect outClippingRect) {
10541054
}
10551055

10561056
@Override
1057-
public boolean getChildVisibleRect(View child, Rect r, android.graphics.Point offset) {
1057+
public boolean getChildVisibleRect(View child, Rect r, @Nullable android.graphics.Point offset) {
10581058
return super.getChildVisibleRect(child, r, offset);
10591059
}
10601060

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -807,7 +807,7 @@ public void getClippingRect(Rect outClippingRect) {
807807
}
808808

809809
@Override
810-
public boolean getChildVisibleRect(View child, Rect r, android.graphics.Point offset) {
810+
public boolean getChildVisibleRect(View child, Rect r, @Nullable android.graphics.Point offset) {
811811
return super.getChildVisibleRect(child, r, offset);
812812
}
813813

packages/react-native/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -799,7 +799,7 @@ public void getClippingRect(Rect outClippingRect) {
799799
}
800800

801801
@Override
802-
public boolean getChildVisibleRect(View child, Rect r, android.graphics.Point offset) {
802+
public boolean getChildVisibleRect(View child, Rect r, @Nullable android.graphics.Point offset) {
803803
return super.getChildVisibleRect(child, r, offset);
804804
}
805805

0 commit comments

Comments
 (0)