fix(common): add test case and fix smp bugs
Turns out that @darcywong00's suggestion for a test case was a Very Good Idea. The SMP handling in Keyman Core had an egregious bug where only half of a surrogate pair was being deleted in the UTF-16 context; see kmx_processor.cpp 425-428. This was then masked by the test runner masking the damage in the original test case; see kmx.cpp 193-203. The new test case exercises a number of additional ways of manipulating the context where surrogate pairs exist, to show we handle the deletion properly within Keyman Core and in the test runner.
parent
c26b9a2e
Please register or sign in to comment