http://bugs.winehq.org/show_bug.cgi?id=34875 xmine64 <the.madamin20@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |the.madamin20@gmail.com --- Comment #19 from xmine64 <the.madamin20@gmail.com> --- Win32 documentations state that EN_CHANGE notification shouldn't be sent when the editor's text updated using WM_SETTEXT message. The current RICHED20 implementation in Wine doesn't respect that and it breaks Word Flood application: The null exception happens in Word Flood's WndProc, while it's handling a WM_COMMAND message sent by RICHED20 to notify the app about a text change that's requested by WM_SETTEXT. This patch disables EN_CHANGE notification while RICHED20 is running WM_SETTEXT message, I tested it and it fixed the issue. diff --git a/dll/win32/riched20/editor.c b/dll/win32/riched20/editor.c index b2a0f78200c..9c2210eff17 100644 --- a/dll/win32/riched20/editor.c +++ b/dll/win32/riched20/editor.c @@ -3634,6 +3634,8 @@ LRESULT editor_handle_message( ME_TextEditor *editor, UINT msg, WPARAM wParam, case WM_SETTEXT: { ME_Cursor cursor; + int oldEventMask = editor->nEventMask; + editor->nEventMask &= ~ENM_CHANGE; ME_SetCursorToStart(editor, &cursor); ME_InternalDeleteText(editor, &cursor, ME_GetTextLength(editor), FALSE); if (lParam) @@ -3657,6 +3659,7 @@ LRESULT editor_handle_message( ME_TextEditor *editor, UINT msg, WPARAM wParam, ME_CommitUndo(editor); ME_EmptyUndoStack(editor); ME_UpdateRepaint(editor, FALSE); + editor->nEventMask = oldEventMask; return 1; } case EM_CANPASTE: -- 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.