http://bugs.winehq.org/show_bug.cgi?id=59500 Bug ID: 59500 Summary: Scrivener 3 (Qt 6.4.3) crashes silently when opening RTF documents containing emoji encoded as UTF-16 surrogate pairs Product: Wine Version: 10.0 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: dwrite Assignee: wine-bugs@list.winehq.org Reporter: golfsmarts@gmail.com Distribution: --- Wine version: wine-10.0 (Ubuntu 10.0~repack-6ubuntu1+zorin5) Distribution: Zorin OS 18 (Ubuntu 24.04 noble base) Architecture: 64-bit Application: Scrivener 3.1.6.0 for Windows (Literature & Latte) Description: Scrivener 3 crashes silently when opening any document whose underlying RTF file contains emoji characters. The emoji are encoded in RTF as sequences of the form: \loch\af2\hich\af2\dbch\af2\uc1\u55356\'3F\u57130\'3F These are UTF-16 surrogate pairs (high surrogate U+D800–U+DBFF followed by low surrogate U+DC00–U+DFFF) used to encode Unicode codepoints above U+FFFF. Scrivener uses Qt 6.4.3, confirmed via strings on the binary (build tag ScrQt643-rel1). The crash does not occur on native Windows. Stripping the \dbch...\uc1\uXXXXX sequences from the affected RTF files completely eliminates the crashes, confirming surrogate pair handling as the root cause. This appears to be the same class of issue reported for LOOT v0.20.0 (Qt 6.5.1) crashing under Wine after upgrading from Qt5: https://github.com/loot/loot/issues/1886 Reproducer: Any Qt 6.x application that renders a string containing Unicode codepoints above U+FFFF (emoji, supplementary CJK, etc.) Expected behavior: Application renders or ignores the characters without crashing Actual behavior: Silent crash, no error dialog -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.