From c8451bd0d84c8f41259899ecf8ef8aab8a864c05 Mon Sep 17 00:00:00 2001 From: Dan Abramov Date: Mon, 14 Nov 2016 12:55:59 +0000 Subject: [PATCH] Catch first error from setState updaters --- src/renderers/shared/fiber/ReactFiberUpdateQueue.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/renderers/shared/fiber/ReactFiberUpdateQueue.js b/src/renderers/shared/fiber/ReactFiberUpdateQueue.js index 77c1290014..2a2af6520c 100644 --- a/src/renderers/shared/fiber/ReactFiberUpdateQueue.js +++ b/src/renderers/shared/fiber/ReactFiberUpdateQueue.js @@ -71,7 +71,7 @@ exports.addCallbackToQueue = function(queue : UpdateQueue, callback: Function) : exports.callCallbacks = function(queue : UpdateQueue, context : any) : Error | null { let node : ?UpdateQueueNode = queue; - let error = null; + let firstError = null; while (node) { const callback = node.callback; if (callback && !node.callbackWasCalled) { @@ -82,13 +82,13 @@ exports.callCallbacks = function(queue : UpdateQueue, context : any) : Error | n } else { callback(); } - } catch (e) { - error = e; + } catch (error) { + firstError = firstError || error; } } node = node.next; } - return error; + return firstError; }; exports.mergeUpdateQueue = function(queue : UpdateQueue, instance : any, prevState : any, props : any) : any {