[MutationObservers] V8LazyEventHandler breaks microtask delivery semantics
https://bugs.webkit.org/show_bug.cgi?id=73492
Reviewed by Adam Barth.
Source/WebCore:
Test: fast/mutation/inline-event-listener.html
* bindings/v8/V8LazyEventListener.cpp:
(WebCore::V8LazyEventListener::prepareListenerObject): Call v8::Script::Run directly instead of going through V8Proxy.
Tools:
Add eventSender.scheduleAsynchronousKeyDown, needed to cause a
keypress event without any script on the stack.
* DumpRenderTree/chromium/EventSender.cpp:
(EventSender::EventSender):
(EventSender::keyDown):
(KeyDownTask::KeyDownTask):
(KeyDownTask::runIfValid):
(EventSender::scheduleAsynchronousKeyDown):
* DumpRenderTree/chromium/EventSender.h:
LayoutTests:
* fast/mutation/inline-event-listener-expected.txt: Added.
* fast/mutation/inline-event-listener.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@102424 268f45cc-cd09-0410-ab3c-d52691b4dbfc
8 files changed