Empty transclude inside button widget - instant crash

Wikitext such as <$button>{{}}</$button> results in an instant crash. (I have only tested this in the preview pane; I dare not save such a tiddler, lest it render the entire wiki unopenable unless and until I manually edit the html file to remove such text.) I have found this to be true on both TiddlyDesktop and in the Brave browser (chromium-based) using a single-file wiki, on version 5.3.3. Interestingly, it does not seem to be hanging on some loop; it crashes instantly upon showing the preview (or, upon completing <$button>{{}} if the preview is already shown).

Precise steps to reproduce:

  • Create new Tiddler
  • Enter <$button>{{}} in the text of the tiddler
  • Open the side-by-side preview

Interestingly, if I use an <$edit-text> widget in place of a button widget, it hangs rather than instantly crashing (correction: sometimes it hangs for a time and then renders with a recursive transclusion error).

[Edit: included more information about the TW version]

1 Like

Confirmed. I have no idea why it crashes without being caught. Just {{}} leads to a recursive transclusion error, which makes sense to me. I assume that this version is creating something like

<$button><$button><$button><$button><$button>...</$button></$button></$button></$button>

But I don’t know why the safeguards that catch the plain {{}} don’t work.

1 Like