@samitouri / QOS-React / commits / 5816829170

De-duplicate commitUpdateQueue effect commit (#13403)

Ruud Burger committed Aug 15, 2018 at 20:21 UTC 5816829170662eed09e9681ce387d5672fc3da31
1 file changed +8 -10
packages/react-reconciler/src/ReactUpdateQueue.js
+8 -10
@@ -599,19 +599,17 @@ export function commitUpdateQueue<State>(
599 }
600
601 // Commit the effects
602 - let effect = finishedQueue.firstEffect;
602 + commitUpdateEffects(finishedQueue.firstEffect, instance);
603 finishedQueue.firstEffect = finishedQueue.lastEffect = null;
604 - while (effect !== null) {
605 - const callback = effect.callback;
606 - if (callback !== null) {
607 - effect.callback = null;
608 - callCallback(callback, instance);
609 - }
610 - effect = effect.nextEffect;
611 - }
604
613 - effect = finishedQueue.firstCapturedEffect;
605 + commitUpdateEffects(finishedQueue.firstCapturedEffect, instance);
606 finishedQueue.firstCapturedEffect = finishedQueue.lastCapturedEffect = null;
607 +}
608 +
609 +function commitUpdateEffects<State>(
610 + effect: Update<State> | null,
611 + instance: any,
612 +): void {
613 while (effect !== null) {
614 const callback = effect.callback;
615 if (callback !== null) {