While running mshtml/tests/dom.c on a slow dual processor under valgrind, I got the following hang: ... 7 0x04b22c1c GetMessageA+0x60(msg=0x7f21fdc8, hwnd=0x0, first=0x0, last=0x0) [dlls/user32/message.c:2976] in user32 (0x7f21fda8) 8 0x04946eb1 run_domtest+0x91(str=0x495fab0, test=0x493daa4) [dlls/mshtml/tests/dom.c:2597] in mshtml_test (0x7f21fdf8) 9 0x0494711c func_dom+0x45() [dlls/mshtml/tests/dom.c:2652] in mshtml_test (0x7f21fe18) ...
The offending GetMessage call is in the following loop in tests/dom.c:
while(!doc_complete && GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); }
The doc_complete test has been in that file since the test was added; git blame says it was added by this commit:
commit 1534267ba500156e7965fdc399247ca69eb7c014 Author: Jacek Caban jacek@codeweavers.com Date: Sun Jun 24 21:09:03 2007 +0200
mshtml: Added beginning DOM tests.
Jacek, could you have a look and see if there's some obvious race you could fix?
Thanks, Dan