Folks,
This is weird one. The Winelib build of AbiWord exposes an off-by-one error. However, the Win32 build of AbiWord works perfectly (without this very problem) under Wine/ReactOS/Windows. AbiWord builds flawlessly under Winelib, not even a warning, so my guess one of our constants is off by one. The bug must appear in their code while building it, since our code to execute the Winelib app and the Win32 app is byte for byte identical.
I've attached a few screenshots to demonstrate what happens when you open a menu/dialog/etc and then you close it. Namely, the invalidation (or rather painting) is off by one at right & bottom of the invalidated rectangle.