As Eric correctly pointed out, there was a much simpler fix: I feel a bit silly for not spotting that :) ChangeLog: Prevent false matches in WIN_FindWindow Index: windows/win.c =================================================================== RCS file: /home/wine/wine/windows/win.c,v retrieving revision 1.230 diff -u -r1.230 win.c --- windows/win.c 11 Dec 2003 05:34:53 -0000 1.230 +++ windows/win.c 27 Dec 2003 20:18:16 -0000 @@ -1538,7 +1538,7 @@ { while (list[i]) { - if (GetWindowTextW( list[i], buffer, len ) && !strcmpiW( buffer, title )) break; + if (GetWindowTextW( list[i], buffer, len + 1 ) && !strcmpiW( buffer, title )) break; i++; } }