diff --git a/src/vdom.nim b/src/vdom.nim index 77b3c89..599ea08 100644 --- a/src/vdom.nim +++ b/src/vdom.nim @@ -132,6 +132,9 @@ proc dthunk*(name: cstring; args: varargs[VNode, vn]): VNode = VNode(kind: VNodeKind.dthunk, text: name, key: -1, kids: @args) proc eq*(a, b: VNode): bool = + if a.track != 0 and b.track != 0: + # do not recurse here: + return a.track == b.track if a.kind != b.kind: return false if a.id != b.id: return false if a.class != b.class: return false @@ -144,8 +147,6 @@ proc eq*(a, b: VNode): bool = if a.attrs.len != b.attrs.len: return false for i in 0..