Closed
Bug 170693
Opened 23 years ago
Closed 22 years ago
moz crashes randomly opening a new window [@ nsWindowWatcher::GetActiveWindow ]
Categories
(Core Graveyard :: Embedding: APIs, defect)
Core Graveyard
Embedding: APIs
Tracking
(Not tracked)
RESOLVED
FIXED
mozilla1.5alpha
People
(Reporter: bugzilla, Assigned: danm.moz)
Details
(Keywords: crash, fixed1.4.1)
Crash Data
Attachments
(2 files)
11.18 KB,
text/plain
|
Details | |
835 bytes,
patch
|
bryner
:
review+
blizzard
:
superreview+
mkaply
:
approval1.4.1+
|
Details | Diff | Splinter Review |
User-Agent: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.2b) Gecko/20020923
Build Identifier: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.2b) Gecko/20020923
since 21/9 i've been experiencing random crashes, but usually when the opening a
new window. latest talkback ID is:
TB11522883Q
Reproducible: Sometimes
Steps to Reproduce:
1. ..
2.
3.
adding stephend for talkback retrieval please?
(TB11522883Q)
btw, stephend, is this the "correct" way to retrieve TB-info?
isn't there another way so that i don't have to bug you and/or don't have to
file a probable duplicate bug?
Updated•23 years ago
|
Keywords: crash,
stackwanted
Whiteboard: [has talkback ID]
A better way is just to File | Send Page from the browser, instead of cc:ing me
on it.
nsWindowWatcher::GetActiveWindow
[c:/builds/seamonkey/mozilla/embedding/components/windowwatcher/src/nsWindowWatcher.cpp,
line 864]
invoke_copy_to_stack
[c:/builds/seamonkey/mozilla/xpcom/reflect/xptcall/src/md/win32/xptcinvoke.cpp]
XPCWrappedNative::CallMethod
[c:/builds/seamonkey/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp, line 1996]
XPC_WN_GetterSetter
[c:/builds/seamonkey/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp,
line 1299]
js_Invoke [c:/builds/seamonkey/mozilla/js/src/jsinterp.c, line 830]
js_InternalInvoke [c:/builds/seamonkey/mozilla/js/src/jsinterp.c, line 926]
js_GetProperty [c:/builds/seamonkey/mozilla/js/src/jsobj.c, line 2547]
js_Interpret [c:/builds/seamonkey/mozilla/js/src/jsinterp.c, line 2640]
js_Invoke [c:/builds/seamonkey/mozilla/js/src/jsinterp.c, line 841]
js_InternalInvoke [c:/builds/seamonkey/mozilla/js/src/jsinterp.c, line 926]
JS_CallFunctionValue [c:/builds/seamonkey/mozilla/js/src/jsapi.c, line 3433]
nsJSContext::CallEventHandler
[c:/builds/seamonkey/mozilla/dom/src/base/nsJSEnvironment.cpp, line 1044]
GlobalWindowImpl::RunTimeout
[c:/builds/seamonkey/mozilla/dom/src/base/nsGlobalWindow.cpp, line 4605]
GlobalWindowImpl::InsertTimeoutIntoList
[c:/builds/seamonkey/mozilla/dom/src/base/nsGlobalWindow.cpp, line 4941]
destroyTimerEvent [c:/builds/seamonkey/mozilla/xpcom/threads/nsTimerImpl.cpp,
line 436]
nsAppShell::GetNativeEvent
[c:/builds/seamonkey/mozilla/widget/src/windows/nsAppShell.cpp, line 233]
nsAppShellService::Run
[c:/builds/seamonkey/mozilla/xpfe/appshell/src/nsAppShellService.cpp, line 472]
main1 [c:/builds/seamonkey/mozilla/xpfe/bootstrap/nsAppRunner.cpp, line 1524]
main [c:/builds/seamonkey/mozilla/xpfe/bootstrap/nsAppRunner.cpp, line 1872]
WinMain [c:/builds/seamonkey/mozilla/xpfe/bootstrap/nsAppRunner.cpp, line 1892]
Mozilla.exe + 0x7992 (0x00407992)
KERNEL32.dll + 0x1bbb5 (0x77f1bbb5)
Updated•23 years ago
|
Keywords: stackwanted
Summary: moz crashes randomly opening a new window → moz crashes randomly opening a new window [@ nsWindowWatcher::GetActiveWindow ]
Whiteboard: [has talkback ID]
Comment 3•23 years ago
|
||
related: bug 167233
does it still happen with latest nightly build ?
Possibly. Talkback shows one crash in a build on the 24th.
Trunk (nsWindowWatcher::GetActiveWindow):
Total 237
Unique Users 148
1 2002092404
20 2002092308
7 2002092304
...and on.
Could be that both of these crashes are connectivity problems and this is a dupe
of 167233. The checkin for bug 167233 (@ nsWindowWatcher::GetActiveWindow) went
in on the 23rd and the crashes drop off sharply. We will have to look at
Talkback data in the next few days to see if that crash in the 9/24 build is an
anomaly or not.
Comment 5•23 years ago
|
||
do you still crash using latest 1.2 build ?
http://ftp.mozilla.org/pub/mozilla/nightly/latest-1.2
Comment 6•23 years ago
|
||
-> embedding: APIs, as a guess based on the path to the file
Assignee: asa → adamlock
Component: Browser-General → Embedding: APIs
QA Contact: asa → depstein
Comment 7•23 years ago
|
||
Seeing the same thing here with 2002112304 on winXP
TB14415230K
TB14408066E
Comment 8•23 years ago
|
||
can this still be reproduced with a recent build?
Comment 9•23 years ago
|
||
http://ftp26moz.newaol.com/pub/data/crash-data/rankoutput.html shows this stack
signature once or twice a day.
Comment 10•23 years ago
|
||
well I can't see any other open bugs with this signature (previously there's bug
81629, bug 160590 and bug 167233), so confirming this.
reassigning based on previous bug (and the fact that embedding: APIs doesn't
sound right to me...)
Assignee: adamlock → jaggernaut
Status: UNCONFIRMED → NEW
Component: Embedding: APIs → XP Toolkit/Widgets
Ever confirmed: true
QA Contact: depstein → jrgm
Comment 11•23 years ago
|
||
embedding apis is kind of right. it's only wrong because in almost all cases the
problem is a caller, but the caller is a javascript object or some dom critter,
and we can't track that down without a debugger because that information doesn't
appear in stack traces. it's not a toolkit/widgets bug.
Assignee: jaggernaut → danm
Component: XP Toolkit/Widgets → Embedding: APIs
QA Contact: jrgm → depstein
Comment 12•23 years ago
|
||
I've been seeing a spate of similar new window crashes on the recent line of
1.3b nightlies.
Currently using:
Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:1.3b) Gecko/20030113
Some Talkback IDs:
TB16205410E
TB16167910Q
TB16136413Y
TB16135398H
TB16033788X
Comment 13•23 years ago
|
||
Roscoe, Ron, does it happen with a fresh profile "mozilla -profilemanager" ?
This is supposed to be fixed in bug 167233 but still showing in the topcrashers'
list.
Adding 'topcrash' keyword although it only shows as #63 on the Trunk
topcrashers' list.
Adding 'stackwanted' to make sure this is indeed the same stack: TB16136413Y.
Keywords: stackwanted,
topcrash
Whiteboard: TB16136413Y
Comment 14•23 years ago
|
||
This has been occuring on a profile that has existed since 1.2. Not that it
isn't a decent way to try and isolate causation, but aren't profiles supposed to
migrate forward cleanly at this time?
FWIW, I haven't noticed this issue on the 20030116 and 20030115 builds, but it
could just be the sites I've visited.
![]() |
||
Updated•23 years ago
|
QA Contact: depstein → ashishbhatt
Comment 15•23 years ago
|
||
useless stack:
ntdll.dll + 0x29181 (0x77f89181)
ntdll.dll + 0xcf28 (0x77f6cf28)
ntdll.dll + 0x7586 (0x77f67586)
USER32.dll + 0x124c (0x77e7124c)
Comment 16•23 years ago
|
||
please reopen if you still crash with latest nightly build.
*** This bug has been marked as a duplicate of 167233 ***
Status: NEW → RESOLVED
Closed: 23 years ago
Keywords: stackwanted,
topcrash
Resolution: --- → DUPLICATE
Whiteboard: TB16136413Y
Reporter | ||
Comment 17•23 years ago
|
||
as i do not see this crash anymore, i won't reopen it.
i think however that you are a bit 'duplicate-happy', as i never use mozilla's
IMAP, and i don't even have mailnews installed.
Comment 18•23 years ago
|
||
http://ftp.mozilla.org/pub/data/crash-data/detailed-crash-analysis-all.html
shows 298 crashes with the same signature. Very few comments mention IMAP, most
of them were about surfing, opening a new window, etc. That's the reason I
believe it's dupe of bug 167233 which is the only bug report with this stack
(eventhough it seems to be linked with IMAP), got fixed in September and there's
no more similar stack after September. comment 14 mentions it doesn't crash anymore.
I may be wrong but this seems to fixed on the trunk.
Comment 19•22 years ago
|
||
I think I may have encountered this crash using
FizzillaMach/2003-05-01-08-trunk, generating TB256784E.
Status: RESOLVED → REOPENED
OS: Windows NT → All
Hardware: PC → All
Resolution: DUPLICATE → ---
Comment 20•22 years ago
|
||
Comment 21•22 years ago
|
||
bryner,
Should another if (mActive) have been added here:
http://lxr.mozilla.org/seamonkey/source/dom/src/base/nsFocusController.cpp#152
![]() |
||
Comment 22•22 years ago
|
||
We have seen this on OS/2 : it traps sys3175 embedcmp.dll
Symptom : trap
Phase Found : FVT function verification test
Testcase :
htttp://jce.iaik.tugraz.at/servlet/demo.sslclientinfo.SSLClientInfoServlet
Build ID : mozilla 20030430 en_US os/2
Platform : IBM PC 6579-a4u 78-VPWMV OS : MCP2
Description : mozilla traps when opening new window
Link takes you to a page that checks SSLClientInfo.
Select the link opens a page that automatically opens a new page.
The trap happens just before a warning popup - "website certified by an
Unknown Authority".
Does Mozilla fail on Windows in the same way? I could not recreate on windows 2k
Did this Mozilla function work on a previous build (Regression)? no
Reproducibility : intermittent
uninstall/install
Steps to Recreate :
1. Uninstall Browser - an older browser build with a profile
2. Install Browser - create new profile
3. Open
http://jce.iaik.tugraz.at/servlet/demo.sslclientinfo.SSLClientInfoServlet
You are redirected here by our testcase :
http://ei4b.test.austin.ibm.com/BrwTestSSL/BrwTestSSL.html
Link on line "SSL Client Info Test presents you with a new
certificate, and asks for your personal certificate."
4. After warning and certificate popups you should be taken to a webpage -
SSLClientInfo
Actual Results : trap sys3175 after selecting link - checking website certification
Expected Results : warning popup, then taken to page
Workaround - restart browser - works afterwards without failure.
![]() |
Assignee | |
Comment 23•22 years ago
|
||
I see many reports of this crash in Talkback. I believe it's happening to
/somebody/. Just not me or anyone here. So here's the latest thinking on this
problem.
The "only way" this short and relatively benign method could crash is if
mActiveWindow referred to some deleted window. By the time the crash happens
the damage has already been done, so the crash stack trace is useless. (A quick
fix would be, as bryner once suggested in related bug 167233, to use a weakref
rather than a simple non-owning ref. But that just masks the real underlying
problem, that somehow someone isn't keeping the active window reference
up-to-date.)
Without a testcase that works for us, we're reduced to eyeballing. Much
eyeballing. WindowWatcher could have its active window pointer left dangling
after the active window was destroyed if somehow by mistake the DOM Window WW
uses to represent the active top-level window didn't correspond to the
destroyed window's top-level DocShell. nsFocusController calculates that
top-level DOM window from its given focus DOM window by traversing a chain of
parent pointers. And it does this at a somewhat indeterminate time; after the
OS activates and focuses a new window. bryner and I wonder if occasionally a
stroke of timing causes us to try to set WW's active top-level window before
the chain of container DocShells has been completely hooked up.
This patch admits as active windows only DOM windows that are already known to
represent some top-level window's top-level DocShell. It's a good check to make
anyway. If we've stumbled into the correct explanation for this bug, this
should fix the crash. The side effect will be that sometimes the active window
pointer is incorrect; it will refer to some valid but inactive window (or
null). This is not a major concern, but it could screw up parenting of
otherwise orphaned modal dialogs and alerts. If this crash subsequently goes
away, the next step will be to notice the returned error in nsFocusController
and schedule a repeat attempt to set the active window after the DocShell chain
has been established.
If this doesn't fix the crash, I'm nearly ready to give up and take the weak
pointer solution.
Attachment #126965 -
Flags: superreview?(blizzard)
Attachment #126965 -
Flags: review?(bryner)
![]() |
||
Comment 24•22 years ago
|
||
Comment on attachment 126965 [details] [diff] [review]
active window must be a top-level docshell
Sure, sounds fine. We should be able to tell relatively soon from talkback
data if this is the culprit.
Only one nit, instead of NS_ASSERTION(0, ...) you can just use NS_ERROR() for
the same effect.
Attachment #126965 -
Flags: review?(bryner) → review+
![]() |
||
Updated•22 years ago
|
Attachment #126965 -
Flags: superreview?(blizzard) → superreview+
![]() |
Assignee | |
Comment 25•22 years ago
|
||
patch is in. fingers crossed.
![]() |
Assignee | |
Comment 26•22 years ago
|
||
Talkback reports no incidents involving nsWindowWatcher::GetActiveWindow since
this patch was checked in a week ago. Would those who can see this crash be
certain to take this patch out for a tour? It's not in Mozilla 1.4; you'll need
to spin your own or run with a nightly build from July 4th or later.
Comment 28•22 years ago
|
||
Comment on attachment 126965 [details] [diff] [review]
active window must be a top-level docshell
If anyone involved in this bug thinks it shouldn't go in 1.4.1, speak now or
forever hold your peace.
Attachment #126965 -
Flags: approval1.4.x+
![]() |
Assignee | |
Comment 29•22 years ago
|
||
Patch was checked in to the 1.4 branch three days ago.
Still no mention of this crash in Talkback from a build later than June. There's
hope for optimism. Gonna call this fixed in another week like this last one.
(And then worry about rescheduling the setting of the active window, which is
apparently sometimes incorrect; see comment 23.)
Updated•22 years ago
|
Keywords: fixed1.4.1
![]() |
Assignee | |
Comment 30•22 years ago
|
||
It's been a month and more, and I'm told that as of today talkback reports no
crashes with this signature from a build dated after the patch was checked in.
Nifty. Guess we stumbled into the right solution, then. I'm calling it fixed,
and consequently opening bug 217277 for the implied focus issue.
Status: REOPENED → RESOLVED
Closed: 23 years ago → 22 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.5alpha
Updated•14 years ago
|
Crash Signature: [@ nsWindowWatcher::GetActiveWindow ]
Updated•7 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•