mirror of
https://github.com/storytold/deckcraft.git
synced 2026-11-01 14:37:05 -06:00
Dictionary::check splits a word at every point looking for compound parts, so a check costs O(n²) in the word's length under a compounding dictionary (German, Dutch, …). A 100,000-character "word" took about 17 s per check in release, and spell check runs again on every edit. suggest() was already capped at 64 characters; check() wasn't. Words longer than MAX_CHECK_CHARS (100, Hunspell's word length limit) now pass unchecked.