Bug 37494

Summary: REGRESSION (r57340): fast/events/mouse-drag-from-frame-to-other-frame.html fails on Windows
Product: WebKit Reporter: Adam Roben (:aroben) <aroben>
Component: Tools / TestsAssignee: Alexey Proskuryakov <ap>
Status: RESOLVED FIXED    
Severity: Normal CC: ap, darin
Priority: P2 Keywords: InRadar, LayoutTestFailure, PlatformOnly
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Windows XP   
URL: http://build.webkit.org/results/Windows%20Debug%20(Tests)/r57340%20(11968)/fast/events/mouse-drag-from-frame-to-other-frame-pretty-diff.html
Attachments:
Description Flags
Add Windows failing results for mouse-drag-from-frame-to-other-frame.html
none
proposed fix ggaren: review+

Description Adam Roben (:aroben) 2010-04-13 00:00:34 PDT
Since r57340 <http://trac.webkit.org/changeset/57340>, fast/events/mouse-drag-from-frame-to-other-frame.html has been failing on Windows.
Comment 1 Adam Roben (:aroben) 2010-04-13 00:01:22 PDT
<rdar://problem/7857060>
Comment 2 Alexey Proskuryakov 2010-04-13 00:25:30 PDT
Hmm. What about bug 29963?

I don't see how r57340 could affect this.
Comment 3 Adam Roben (:aroben) 2010-04-13 00:36:18 PDT
(In reply to comment #2)
> Hmm. What about bug 29963?

That bug was fixed in r54400, and the expected failure result was removed in r54459. But now we're failing the test again.

> I don't see how r57340 could affect this.

Given that r48884 likely caused bug 29963, and r54400 fixed it, it seems this test is sensitive to some details of our implementation of event listeners. Since r57340 changes some of those details, I'm not that surprised that it could have caused this.
Comment 4 Adam Roben (:aroben) 2010-04-13 21:40:49 PDT
Created attachment 53312 [details]
Add Windows failing results for mouse-drag-from-frame-to-other-frame.html
Comment 5 Eric Seidel (no email) 2010-04-13 22:38:18 PDT
Comment on attachment 53312 [details]
Add Windows failing results for mouse-drag-from-frame-to-other-frame.html

I assume you're going to leave this bug open.
Comment 6 Adam Roben (:aroben) 2010-04-13 22:38:55 PDT
(In reply to comment #5)
> I assume you're going to leave this bug open.

Yes, exactly.

Thanks for the review!
Comment 7 Adam Roben (:aroben) 2010-04-13 23:25:22 PDT
Comment on attachment 53312 [details]
Add Windows failing results for mouse-drag-from-frame-to-other-frame.html

Committed r57563.
Comment 8 Alexey Proskuryakov 2010-04-15 16:40:12 PDT
The problem here is that after r57340, ScriptController for one of the frames is created later than it used to be. It's created during replaySavedEvents in DRT, which results in EventSender state being lost:

JSObjectRef makeEventSender(JSContextRef context) 
{
    down = false; 
    dragMode = true; 
    replayingSavedEvents = false; 
...

We don't have such code on the Mac, because the state machine for replaySavedEvents is different there, and resetting wasn't needed. See <http://trac.webkit.org/changeset/29724> for the original fix that introduced resetting.
Comment 9 Alexey Proskuryakov 2010-04-15 16:43:31 PDT
Created attachment 53488 [details]
proposed fix
Comment 10 Geoffrey Garen 2010-04-15 16:49:40 PDT
Comment on attachment 53488 [details]
proposed fix

r=me
Comment 11 Alexey Proskuryakov 2010-04-15 16:53:59 PDT
Committed <http://trac.webkit.org/changeset/57685>.