From c7d2d9d050548f06244caeeedc2c0e0e52eb329f Mon Sep 17 00:00:00 2001 From: Jonathan Kelley Date: Wed, 22 Sep 2021 01:37:45 -0400 Subject: [PATCH] wip: fix invalid is_empty bug --- packages/core/src/diff.rs | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/core/src/diff.rs b/packages/core/src/diff.rs index 34ec66644..838359e82 100644 --- a/packages/core/src/diff.rs +++ b/packages/core/src/diff.rs @@ -328,8 +328,8 @@ impl<'bump> DiffMachine<'bump> { self.mutations.set_attribute(attr); } - if children.is_empty() { - self.stack.element_id_stack.push(real_id); + if !children.is_empty() { + // self.stack.element_id_stack.push(real_id); // push our element_id onto the stack // drop our element off the stack self.stack.create_children(children, MountType::Append); @@ -522,6 +522,10 @@ impl<'bump> DiffMachine<'bump> { } } + if has_comitted { + self.mutations.pop(); + } + self.diff_children(old.children, new.children); }