Jacek Caban : mshtml: Properly support custom event listeners in XMLHttpRequest object.
Alexandre Julliard
julliard at winehq.org
Thu Feb 22 15:07:48 CST 2018
Module: wine
Branch: master
Commit: 74d6c6d2fb40f96128699397246a880c37213054
URL: https://source.winehq.org/git/wine.git/?a=commit;h=74d6c6d2fb40f96128699397246a880c37213054
Author: Jacek Caban <jacek at codeweavers.com>
Date: Thu Feb 22 19:47:35 2018 +0100
mshtml: Properly support custom event listeners in XMLHttpRequest object.
Signed-off-by: Jacek Caban <jacek at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/mshtml/tests/events.js | 12 ++++++++++++
dlls/mshtml/xmlhttprequest.c | 4 +---
2 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/dlls/mshtml/tests/events.js b/dlls/mshtml/tests/events.js
index 108afe2..3836e13 100644
--- a/dlls/mshtml/tests/events.js
+++ b/dlls/mshtml/tests/events.js
@@ -538,6 +538,18 @@ function test_dispatch_event() {
ok(calls === "parent.testing(capture),child.testing(capture),"
+ "child.testing(bubble),parent.testing(bubble),", "calls = " + calls);
+ var xhr = new XMLHttpRequest();
+ xhr.addEventListener("testing", function(event) {
+ ok(event === e, "event != e");
+ ok(event.target === xhr, "target != child");
+ ok(event.srcElement === null, "srcElement != child");
+ calls += "xhr.testing";
+ }, true);
+
+ calls = "";
+ xhr.dispatchEvent(e);
+ ok(calls === "xhr.testing", "calls = " + calls);
+
next_test();
}
diff --git a/dlls/mshtml/xmlhttprequest.c b/dlls/mshtml/xmlhttprequest.c
index ebe2561..5164570 100644
--- a/dlls/mshtml/xmlhttprequest.c
+++ b/dlls/mshtml/xmlhttprequest.c
@@ -755,9 +755,7 @@ static void HTMLXMLHttpRequest_bind_event(DispatchEx *dispex, eventid_t eid)
TRACE("(%p)\n", This);
- assert(eid == EVENTID_READYSTATECHANGE);
-
- if(This->event_listener)
+ if(eid != EVENTID_READYSTATECHANGE || This->event_listener)
return;
This->event_listener = heap_alloc(sizeof(*This->event_listener));
More information about the wine-cvs
mailing list