Jinoh Kang (@iamahuman) commented about dlls/winex11.drv/xim.c:
XNStatusAttributes, status,
XNClientWindow, win,
XNFocusWindow, win,
XNDestroyCallback, &destroy,
NULL);
- }
- else
- {
xic = XCreateIC(xim,
XNInputStyle, ximStyle,
XNClientWindow, win,
XNFocusWindow, win,
XNDestroyCallback, &destroy,
NULL);
- }
- preedit = XVaCreateNestedList( 0, XNFontSet, fontSet,
Why is this code assuming that `fontSet` is not `NULL`, regardless of `(ximStyle & (XIMPreeditNothing | XIMPreeditNone)) == 0`? It appears to me that the code that actually sets `x11drv_thread_data()->font_set` does so only if the condition is true.
(Yes, I'm aware that later commit changes font set handling, but bisection points to this one as the first bad commit.)