From dbf232acb059f9f3f8972242b68a9384b1290dd4 Mon Sep 17 00:00:00 2001 From: Hayleigh Thompson Date: Sat, 14 Oct 2023 12:39:51 +0100 Subject: :bug: Fixed bug where morphing existing DOM nodes could cause crashes with events. --- src/runtime.ffi.mjs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/runtime.ffi.mjs b/src/runtime.ffi.mjs index bbc76b4..28516ac 100644 --- a/src/runtime.ffi.mjs +++ b/src/runtime.ffi.mjs @@ -90,6 +90,10 @@ function morphElement(prev, curr, ns, dispatch, parent) { const prevAttrs = prev.attributes; const currAttrs = new Map(); + // This can happen if we're morphing an existing DOM element that *wasn't* + // initially created by lustre. + prev.$lustre ??= {}; + let currAttr = curr[1]; while (currAttr.head) { if (currAttr.head[0] === "class" && currAttrs.has("class")) { -- cgit v1.2.3