ViewPagerAndroid: FIX folly::toJson: JSON object value was a NaN or INF

Summary:
Explain the **motivation** for making this change. What existing problem does the pull request solve?

Under certain scenario, `PageScrollEvent.offset` was initialized to `NaN`, which cause `folly::toJson` failed, and FIX #9750

<https://github.com/android/platform_frameworks_base/blob/e71ecb2c4df15f727f51a0e1b65459f071853e35/core/java/com/android/internal/widget/ViewPager.java#L1689>

![image](https://cloud.githubusercontent.com/assets/104052/18266416/2a01f882-744d-11e6-86c4-3a2de3a1ca25.png)

**Test plan (required)**

<http://stackoverflow.com/questions/39327429/reactnative-viewpagerandroid-rcteventemitter>
Closes https://github.com/facebook/react-native/pull/9755

Differential Revision: D3841674

Pulled By: andreicoman11

fbshipit-source-id: d4cd9f4b2f61daad9005a098161ad7f75555345d
This commit is contained in:
leeight
2016-09-09 08:47:29 -07:00
committed by Facebook Github Bot 9
parent 68848f8c91
commit 6efe8e1d81
2 changed files with 5 additions and 2 deletions
@@ -34,7 +34,10 @@ import com.facebook.react.uimanager.events.RCTEventEmitter;
protected PageScrollEvent(int viewTag, int position, float offset) {
super(viewTag);
mPosition = position;
mOffset = offset;
// folly::toJson default options don't support serialize NaN or Infinite value
mOffset = (Float.isInfinite(offset) || Float.isNaN(offset))
? 0.0f : offset;
}
@Override