Closed Bug 576332 Opened 15 years ago Closed 15 years ago

Crash [@ PresShell::DispatchSynthMouseMove] clicking link "click here to cancel"

Categories

(Core :: Layout, defect)

x86
Windows XP
defect
Not set
critical

Tracking

()

RESOLVED FIXED
mozilla2.0b1
Tracking Status
blocking2.0 --- beta2+

People

(Reporter: tracy, Assigned: roc)

References

Details

(Keywords: crash, Whiteboard: [4b1], [Input] )

Crash Data

Attachments

(3 files)

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:2.0b1) Gecko/20100630 Firefox/4.0b1 Seeing this only on Windows XP, Mac And Win 7 aren't affected. STR: 1) ensure "Menu Item Usage v2" study. is running (use chrome://testpilot/content/debug.html to set it to 3 if you need to) 2) Open All your studies > current studies and click the "more info" link the "Menu Item Usage v2" study. 3) In the resulting, find If you don't want to submit your data this time, "click here to cancel". and click the link tested results: browser crash - http://crash-stats.mozilla.com/report/index/141a0524-a4ff-4e82-94f1-036632100701 expected results: Window for You are about to quit the study
Whiteboard: [4b1]
This is very worrisome. I don't understand how this could be happening, since all the "click here to cancel" link does is open another chrome:// html page. I don't understand how that can be crashing firefox. Nevertheless, it's happening, so I will make it my top priority to figure it out and fix it.
Assignee: nobody → jdicarlo
Status: NEW → ASSIGNED
Jono: In the QA lab I was able to repro this once on XP, but most of time the window that is spawned is not filled with content (it is missing that link completely). I see the same missing content on Vista and 7. The one time I saw the content on Win XP and clicked the link I crashed.
I just crashed on Windows Vista following Tracy's STR in Comment 0 - Mozilla/5.0 (Windows; U; Windows NT 6.0; WOW64; en-US; rv:2.0b1) Gecko/20100630 Firefox/4.0b1.
This is still considered somewhat intermittent at this point? It can not yet be repro'ed on at will correct?
If anyone can reproduce the study window being empty of content (or just having the right-side images, no links in the main part) then could they please report what the study status was? You can check the study status by going to chrome://testpilot/content/debug.html and picking the study (menu item usage v2) from the drop-down menu - it will say something like "Current Status = 3". Getting that number would help me debug the problem.
(In reply to comment #4) > This is still considered somewhat intermittent at this point? It can not yet be > repro'ed on at will correct? Yes, at will, following STR's
Marcia: If the study window is empty before the study has started (i.e. in the all-your-studies window it says "Will start on <date>"), then that's a known bug with the particular study, we're fixing it server-side, and it's probably not related to the crash.
I can't reproduce the crash at all on my WinXP VM. :-(
Marcia: so if you want to try reproducing the bug reliably, you can go to the debug page and click "notify me" to get the notification. Once you close or click "more info" on that notification, the study will be running, and the link will be present in the study window, and you can then try to repro the crash. Which I really hope you can do, since I can't.
It seems I am the only one able to reproduce this reliably.
From the crash report: http://crash-stats.mozilla.com/report/index/141a0524-a4ff-4e82-94f1-036632100701 0 xul.dll PresShell::DispatchSynthMouseMove layout/base/nsPresShell.cpp:4424 1 xul.dll nsViewManager::ProcessSynthMouseMoveEvent view/src/nsViewManager.cpp:1809 2 xul.dll nsSynthMouseMoveEvent::Run view/src/nsViewManager.cpp:1669 3 xul.dll nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:547 4 xul.dll mozilla::ipc::MessagePump::Run ipc/glue/MessagePump.cpp:118 5 xul.dll MessageLoop::RunInternal ipc/chromium/src/base/message_loop.cc:216 6 xul.dll MessageLoop::RunHandler ipc/chromium/src/base/message_loop.cc:199 7 xul.dll xul.dll@0x31c583 8 xul.dll MessageLoop::Run ipc/chromium/src/base/message_loop.cc:173 9 xul.dll nsBaseAppShell::Run widget/src/xpwidgets/nsBaseAppShell.cpp:175 10 xul.dll xul.dll@0xa19373 11 xul.dll nsAppStartup::Run toolkit/components/startup/src/nsAppStartup.cpp:192 12 xul.dll XRE_main toolkit/xre/nsAppRunner.cpp:3624 13 firefox.exe wmain toolkit/xre/nsWindowsWMain.cpp:120 14 firefox.exe __tmainCRTStartup obj-firefox/memory/jemalloc/crtsrc/crtexe.c:591 15 kernel32.dll BaseProcessStart It seems to me, the crash is something that should be fixed in the Mozilla code itself.
Summary: Crash clicking link "click here to cancel" → Crash [@ PresShell::DispatchSynthMouseMove] clicking link "click here to cancel"
I can now reproduce it reliably as well, using steps discovered by dchan. STR: 1) ensure "Menu Item Usage v2" study. is running (use chrome://testpilot/content/debug.html to set it to 3 if you need to) 2) Open All your studies > current studies and click the "more info" link for the Pilot Background Survey. 3) Leaving the survey window open, go back to the All Your Studies window. 4) Click the "more info" link for the "Menu Item Usage v2" study. 5) In the resulting, find If you don't want to submit your data this time, "click here to cancel". and click the link
code: http://hg.mozilla.org/mozilla-central/annotate/65c30e4ee631/layout/base/nsPresShell.cpp#l4424 per Jesus on irc, at targetView = nsIView::GetViewFor(aEvent->widget); aEvent->widget is 0x000000000
Attached file testcase
Just load this testcase up from chrome://, then click on the button, a new window comes up (chromeless), then click on the button in that window to get the crash.
Attached file test extension
This is a simple extension that lets you load up files in chrome:// when you put them under file:///C:/testfiles/ (I know, this is Windows centric, if you have linux/Mac, you'll have to change this in the chrome.manifest file yourself) So if you put the testcase in there, you can load up chrome://tests/content/[name of the testfile] to load the testfile under chrome.
Since this appears to be a Firefox bug that manifests in Test Pilot, as opposed to a Test Pilot bug, should we change its component?
Assignee: jdicarlo → nobody
Component: Test Pilot → Layout
Product: Mozilla Labs → Core
QA Contact: test-pilot → layout
Target Milestone: -- → mozilla1.9.3b1
Version: unspecified → Trunk
Status: ASSIGNED → NEW
Whiteboard: [4b1] → [4b1], [Input]
Will this block beta1?
blocking2.0: --- → ?
Is this a regression?
View manager shouldn't probably dispatch the synth mousemove if widget is null.
Smaug, are you willing to write the patch? Is it sufficient to check for a widget at the top of the function, or are we getting a view with a null widget out of the FindFloatingViewContaining call (in which case maybe we should be changing FindFloatingViewContaining)?
abittner, yes, it is. Thanks for mentioning. Unfortunately, that one wasn't noticed earlier. And since this bug now contains more information and the actual patch, I have to dupe that bug against this one.
Keywords: crash
Attached patch fixSplinter Review
FindFloatingViewContaining already checks for a widget, so it should be enough to check for a widget on mRootView.
Assignee: nobody → roc
Attachment #458469 - Flags: review?(dbaron)
roc: you landing this?
Keywords: checkin-needed
Whiteboard: [4b1], [Input] → [4b1], [Input] [needs landing]
Status: NEW → RESOLVED
Closed: 15 years ago
Keywords: checkin-needed
Resolution: --- → FIXED
Whiteboard: [4b1], [Input] [needs landing] → [4b1], [Input]
Crash Signature: [@ PresShell::DispatchSynthMouseMove]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: