fix optimizer bailing on performDocumentUpdate

This commit is contained in:
Justin Ratner
2017-10-26 15:31:43 -06:00
parent 9a95372613
commit ada645aaa1

View File

@@ -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() }
}