fix: instantly resolving futures should not use popping

This commit is contained in:
Jonathan Kelley committed 2022-03-24 11:15:07 -04:00
1 parent dc028df0dd
commit d50e86492e
2 files changed
+32 -3

No files matched your search

+4 -3
View File
@@ -61,9 +61,10 @@ impl DesktopController {
loop {
dom.wait_for_work().await;
let mut muts = dom.work_with_deadline(|| false);
while let Some(edit) = muts.pop() {
let muts = dom.work_with_deadline(|| false);
for edit in muts {
edit_queue
.lock()
.unwrap()
@@ -97,7 +98,7 @@ impl DesktopController {
let mut queue = self.pending_edits.lock().unwrap();
let (_id, view) = self.webviews.iter_mut().next().unwrap();
while let Some(edit) = queue.pop() {
for edit in queue.drain(..) {
view.evaluate_script(&format!("window.interpreter.handleEdits({})", edit))
.unwrap();
}