2011-06-10 Anders Carlsson <andersca@apple.com>
Reviewed by Sam Weinig.
REGRESSION (WebKit2): window.showModalDialog() broken
https://bugs.webkit.org/show_bug.cgi?id=62496
<rdar://problem/
9581492>
If dispatching a message ends up creating a nested run loop, some incoming messages can end up not being
delivered until we exit from the run loop.
Fix this by using a Deque instead of a Vector for incoming messages, and get one message at a time and then
dispatch it. That prevents us from having any lingering messages lying around in stack allocated space.
* Platform/CoreIPC/Connection.cpp:
(CoreIPC::Connection::waitForMessage):
(CoreIPC::Connection::dispatchMessages):
* Platform/CoreIPC/Connection.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@88588
268f45cc-cd09-0410-ab3c-
d52691b4dbfc