From ada645aaa16c51b49357b161d81af51903d07cc3 Mon Sep 17 00:00:00 2001 From: Justin Ratner Date: Thu, 26 Oct 2017 15:31:43 -0600 Subject: [PATCH] fix optimizer bailing on performDocumentUpdate --- src/view-registry.js | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/view-registry.js b/src/view-registry.js index dcc1624fc..87bf8620f 100644 --- a/src/view-registry.js +++ b/src/view-registry.js @@ -233,16 +233,26 @@ class ViewRegistry { this.nextUpdatePromise = null this.resolveNextUpdatePromise = null - let writer - while ((writer = this.documentWriters.shift())) { writer() } + var writer = this.documentWriters.shift() + while (writer) { + writer() + writer = this.documentWriters.shift() + } - let reader + var reader = this.documentReaders.shift() this.documentReadInProgress = true - while ((reader = this.documentReaders.shift())) { reader() } + while (reader) { + reader() + reader = this.documentReaders.shift() + } this.documentReadInProgress = false // process updates requested as a result of reads - while ((writer = this.documentWriters.shift())) { writer() } + writer = this.documentWriters.shift() + while (writer) { + writer() + writer = this.documentWriters.shift() + } if (resolveNextUpdatePromise) { resolveNextUpdatePromise() } }