From 54e947152f4d534b7352b89bcf3d7e4dfde21538 Mon Sep 17 00:00:00 2001 From: Adam Comella Date: Sun, 20 Nov 2016 15:18:48 -0800 Subject: [PATCH] Navigator: null check on gesture.overswipe to prevent crash Summary: Sometimes, `gesture.overswipe` can be `null`/`undefined` in `_moveAttachedGesture` resulting in a crash. This change adds a null check to avoid the crash. `_matchGestureAction` has a similar check so it looks like this case was overlooked in `_moveAttachedGesture`. **Test plan (required)** My team's app is using this change. Adam Comella Microsoft Corp. Closes https://github.com/facebook/react-native/pull/11017 Differential Revision: D4207277 Pulled By: ericvicenti fbshipit-source-id: a22817c2ebec1c996583269a59d6767f5713771b --- Libraries/CustomComponents/Navigator/Navigator.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Libraries/CustomComponents/Navigator/Navigator.js b/Libraries/CustomComponents/Navigator/Navigator.js index fd2f73bd6..1a0e7dd52 100644 --- a/Libraries/CustomComponents/Navigator/Navigator.js +++ b/Libraries/CustomComponents/Navigator/Navigator.js @@ -914,7 +914,7 @@ var Navigator = React.createClass({ } return; } - if (this._doesGestureOverswipe(this.state.activeGesture)) { + if (gesture.overswipe && this._doesGestureOverswipe(this.state.activeGesture)) { var frictionConstant = gesture.overswipe.frictionConstant; var frictionByDistance = gesture.overswipe.frictionByDistance; var frictionRatio = 1 / ((frictionConstant) + (Math.abs(nextProgress) * frictionByDistance));