Closed Bug 536382 Opened 10 years ago Closed 10 years ago

Crash [@ XUL!ElementTransitionsPropertyDtor][@ nsRefPtr<nsRefreshDriver>::get()] after GC following transitions reftests

Categories

(Core :: Layout, defect, critical)

defect
Not set
critical

Tracking

()

RESOLVED FIXED

People

(Reporter: mak, Assigned: dbaron)

References

Details

(Keywords: intermittent-failure)

http://tinderbox.mozilla.org/showlog.cgi?tree=Firefox&errorparser=unittest&logfile=1261491534.1261493635.17828.gz&buildtime=1261491534&buildname=OS%20X%2010.5.2%20mozilla-central%20opt%20test%20everythingelse&fulltext=1

0  XUL!ElementTransitionsPropertyDtor [nsTransitionManager.cpp:85c3437867ae : 936 + 0x12]
    eip = 0x02203a9a   esp = 0xbfffd020   ebp = 0xbfffd058   ebx = 0x0220223e
    esi = 0x0da09700   edi = 0x0da09704   eax = 0x00000000   ecx = 0x0da09630
    edx = 0x100e6ee0   efl = 0x00210246
    Found by: given as instruction pointer in context
 1  XUL!nsPropertyTable::DeleteProperty(nsPropertyOwner, unsigned short, nsIAtom*) [nsPropertyTable.cpp:85c3437867ae : 361 + 0x1b]
    eip = 0x022d3da0   esp = 0xbfffd060   ebp = 0xbfffd088
    Found by: previous frame's frame pointer
 2  XUL!nsINode::DeleteProperty(unsigned short, nsIAtom*) [nsGenericElement.cpp:85c3437867ae : 243 + 0x1f]
    eip = 0x022b4390   esp = 0xbfffd090   ebp = 0xbfffd0b8
    Found by: previous frame's frame pointer
 3  XUL!nsTransitionManager::Release() [mozilla-central::85c3437867ae : 541 + 0x16]
    eip = 0x0220229a   esp = 0xbfffd0c0   ebp = 0xbfffd0f8
    Found by: previous frame's frame pointer
 4  XUL + 0x24f30d
    eip = 0x020cd30e   esp = 0xbfffd100   ebp = 0xbfffd158
    Found by: previous frame's frame pointer
 5  XUL + 0x24f371
    eip = 0x020cd372   esp = 0xbfffd160   ebp = 0xbfffd178
    Found by: previous frame's frame pointer
 6  XUL!nsPresContext::Release() [nsPresContext.cpp:85c3437867ae : 331 + 0xa]
    eip = 0x020c86dc   esp = 0xbfffd180   ebp = 0xbfffd198
    Found by: previous frame's frame pointer
 7  XUL!nsCOMPtr_base::assign_with_AddRef(nsISupports*) [nsCOMPtr.h:85c3437867ae : 456 + 0x7]
    eip = 0x029b8e4c   esp = 0xbfffd1a0   ebp = 0xbfffd1b8
    Found by: previous frame's frame pointer
 8  XUL!DocumentViewerImpl::Destroy() [mozilla-central::85c3437867ae : 640 + 0x9]
    eip = 0x020b7e82   esp = 0xbfffd1c0   ebp = 0xbfffd228
    Found by: previous frame's frame pointer
 9  XUL!nsSHistory::EvictContentViewersInRange(int, int) [nsSHistory.cpp:85c3437867ae : 881 + 0x7]
    eip = 0x027772cc   esp = 0xbfffd230   ebp = 0xbfffd278
    Found by: previous frame's frame pointer
10  XUL!nsSHistory::EvictContentViewers(int, int) [nsSHistory.cpp:85c3437867ae : 848 + 0x12]
    eip = 0x02778f19   esp = 0xbfffd280   ebp = 0xbfffd298
    Found by: previous frame's frame pointer
11  XUL!DocumentViewerImpl::Show() [nsDocumentViewer.cpp:85c3437867ae : 1937 + 0x15]
    eip = 0x020b8da9   esp = 0xbfffd2a0   ebp = 0xbfffd338
    Found by: previous frame's frame pointer
12  XUL!nsPresContext::EnsureVisible() [nsPresContext.cpp:85c3437867ae : 1612 + 0x7]
    eip = 0x020c8b8b   esp = 0xbfffd340   ebp = 0xbfffd398
    Found by: previous frame's frame pointer
13  XUL!PresShell::UnsuppressAndInvalidate() [nsPresShell.cpp:85c3437867ae : 4553 + 0xa]
    eip = 0x020cea56   esp = 0xbfffd3a0   ebp = 0xbfffd3c8
    Found by: previous frame's frame pointer
14  XUL!PresShell::UnsuppressPainting() [nsPresShell.cpp:85c3437867ae : 4599 + 0x7]
    eip = 0x020cf6e8   esp = 0xbfffd3d0   ebp = 0xbfffd3e8
    Found by: previous frame's frame pointer
15  XUL!DocumentViewerImpl::LoadComplete(unsigned int) [nsDocumentViewer.cpp:85c3437867ae : 1083 + 0xa]
    eip = 0x020b7569   esp = 0xbfffd3f0   ebp = 0xbfffd468
    Found by: previous frame's frame pointer
16  XUL!nsDocShell::EndPageLoad(nsIWebProgress*, nsIChannel*, unsigned int) [nsDocShell.cpp:85c3437867ae : 5735 + 0xe]
    eip = 0x0274da9a   esp = 0xbfffd470   ebp = 0xbfffd718
    Found by: previous frame's frame pointer
17  XUL!nsDocShell::OnStateChange(nsIWebProgress*, nsIRequest*, unsigned int, unsigned int) [nsDocShell.cpp:85c3437867ae : 5613 + 0x25]
    eip = 0x0274b504   esp = 0xbfffd720   ebp = 0xbfffd798
    Found by: previous frame's frame pointer
18  XUL!nsDocLoader::FireOnStateChange(nsIWebProgress*, nsIRequest*, int, unsigned int) [nsDocLoader.cpp:85c3437867ae : 1314 + 0x23]
    eip = 0x0275fc91   esp = 0xbfffd7a0   ebp = 0xbfffd808
    Found by: previous frame's frame pointer
19  XUL!nsDocLoader::DocLoaderIsEmpty(int) [nsDocLoader.cpp:85c3437867ae : 926 + 0x21]
    eip = 0x0276134b   esp = 0xbfffd810   ebp = 0xbfffd8b8
    Found by: previous frame's frame pointer
20  XUL!nsDocLoader::OnStopRequest(nsIRequest*, nsISupports*, unsigned int) [nsDocLoader.cpp:85c3437867ae : 697 + 0xf]
    eip = 0x027616ec   esp = 0xbfffd8c0   ebp = 0xbfffd928
    Found by: previous frame's frame pointer
21  XUL!nsLoadGroup::RemoveRequest(nsIRequest*, nsISupports*, unsigned int) [nsLoadGroup.cpp:85c3437867ae : 680 + 0x19]
    eip = 0x01f36a90   esp = 0xbfffd930   ebp = 0xbfffd988
    Found by: previous frame's frame pointer
22  XUL!nsDocument::UnblockOnload(int) [nsDocument.cpp:85c3437867ae : 7117 + 0x21]
    eip = 0x022a191d   esp = 0xbfffd990   ebp = 0xbfffd9b8
    Found by: previous frame's frame pointer
23  XUL!nsDocument::DispatchContentLoadedEvents() [nsDocument.cpp:85c3437867ae : 4037 + 0x15]
    eip = 0x022a017d   esp = 0xbfffd9c0   ebp = 0xbfffda88
    Found by: previous frame's frame pointer
24  XUL!nsRunnableMethod<nsDocument, void>::Run() [nsThreadUtils.h : 282 + 0xf]
    eip = 0x022a6111   esp = 0xbfffda90   ebp = 0xbfffdaa8
    Found by: previous frame's frame pointer
25  XUL!nsThread::ProcessNextEvent(int, int*) [nsThread.cpp:85c3437867ae : 527 + 0x7]
    eip = 0x029fd64c   esp = 0xbfffdab0   ebp = 0xbfffdaf8
    Found by: previous frame's frame pointer
26  XUL!NS_ProcessPendingEvents_P(nsIThread*, unsigned int) [nsThreadUtils.cpp : 200 + 0x16]
    eip = 0x029be1c7   esp = 0xbfffdb00   ebp = 0xbfffdb48
    Found by: previous frame's frame pointer
27  XUL!nsBaseAppShell::NativeEventCallback() [nsBaseAppShell.cpp:85c3437867ae : 125 + 0x1a]
    eip = 0x0296d442   esp = 0xbfffdb50   ebp = 0xbfffdb78
    Found by: previous frame's frame pointer
28  XUL!nsAppShell::ProcessGeckoEvents(void*) [nsAppShell.mm:85c3437867ae : 510 + 0x7]
    eip = 0x02933af8   esp = 0xbfffdb80   ebp = 0xbfffdc58
    Found by: previous frame's frame pointer
29  CoreFoundation + 0x72677
    eip = 0x966ea678   esp = 0xbfffdc60   ebp = 0xbfffe218
    Found by: previous frame's frame pointer
30  CoreFoundation + 0x72d17
    eip = 0x966ead18   esp = 0xbfffe220   ebp = 0xbfffe258
    Found by: previous frame's frame pointer
31  HIToolbox + 0x3069f
    eip = 0x9427b6a0   esp = 0xbfffe260   ebp = 0xbfffe298
    Found by: previous frame's frame pointer
32  HIToolbox + 0x303f1
    eip = 0x9427b3f2   esp = 0xbfffe2a0   ebp = 0xbfffe328
    Found by: previous frame's frame pointer
33  HIToolbox + 0x3032c
    eip = 0x9427b32d   esp = 0xbfffe330   ebp = 0xbfffe348
    Found by: previous frame's frame pointer
34  AppKit + 0x407d8
    eip = 0x967eb7d9   esp = 0xbfffe350   ebp = 0xbfffe6b8
    Found by: previous frame's frame pointer
35  AppKit + 0x4008d
    eip = 0x967eb08e   esp = 0xbfffe6c0   ebp = 0xbfffe9b8
    Found by: previous frame's frame pointer
36  AppKit + 0x390c4
    eip = 0x967e40c5   esp = 0xbfffe9c0   ebp = 0xbfffea78
    Found by: previous frame's frame pointer
37  XUL!nsAppShell::Run() [nsAppShell.mm:85c3437867ae : 863 + 0x72]
    eip = 0x02932dfa   esp = 0xbfffea80   ebp = 0xbfffeb08
    Found by: previous frame's frame pointer
38  XUL!nsAppStartup::Run() [nsAppStartup.cpp:85c3437867ae : 182 + 0x7]
    eip = 0x027c0757   esp = 0xbfffeb10   ebp = 0xbfffeb28
    Found by: previous frame's frame pointer
39  XUL!XRE_main [nsAppRunner.cpp:85c3437867ae : 3525 + 0x7]
    eip = 0x01e86da9   esp = 0xbfffeb30   ebp = 0xbffff078
    Found by: previous frame's frame pointer
40  firefox-bin!main [nsBrowserApp.cpp:85c3437867ae : 158 + 0x18]
    eip = 0x00001d48   esp = 0xbffff080   ebp = 0xbffff0d8
    Found by: previous frame's frame pointer
41  firefox-bin + 0xbf5
    eip = 0x00001bf6   esp = 0xbffff0e0   ebp = 0xbffff0f0
    Found by: previous frame's frame pointer
42  0x6
    eip = 0x00000007   esp = 0xbffff0f8   ebp = 0x00000000
    Found by: previous frame's frame pointer
Duplicate of this bug: 536441
There have been a whole bunch of unstarred or mis-starred occurrences of this crash.  The first I found was probably next to the push that caused it:

http://hg.mozilla.org/mozilla-central/pushloghtml?changeset=48175bb06cb1


and was:

http://tinderbox.mozilla.org/showlog.cgi?log=Firefox/1261437225.1261445977.4213.gz
WINNT 5.2 mozilla-central debug test everythingelse on 2009/12/21 15:13:45  

Thread 0 (crashed)
 0  xul.dll!nsRefPtr&lt;nsRefreshDriver>::get() [nsAutoPtr.h:48175bb06cb1 : 1078 + 0x3]
    eip = 0x61155a6a   esp = 0x0012caa8   ebp = 0x0012caac   ebx = 0x00000001
    esi = 0x00338e30   edi = 0x00000000   eax = 0x00000024   ecx = 0x00000024
    edx = 0x051c5094   efl = 0x00010206
    Found by: given as instruction pointer in context
 1  xul.dll!nsRefPtr&lt;nsRefreshDriver>::operator nsRefreshDriver *() [nsAutoPtr.h:48175bb06cb1 : 1091 + 0x7]
    eip = 0x61154e7f   esp = 0x0012cab4   ebp = 0x0012cab8
    Found by: call frame info
 2  xul.dll!nsPresContext::RefreshDriver() [nsPresContext.h:48175bb06cb1 : 236 + 0x11]
    eip = 0x6143d092   esp = 0x0012cac0   ebp = 0x0012cac4
    Found by: call frame info
 3  xul.dll!nsTransitionManager::TransitionsRemoved() [nsTransitionManager.cpp:48175bb06cb1 : 936 + 0x28]
    eip = 0x6143db80   esp = 0x0012cacc   ebp = 0x0012cadc
    Found by: call frame info
 4  xul.dll!ElementTransitions::~ElementTransitions() [nsTransitionManager.cpp:48175bb06cb1 : 164 + 0xa]
    eip = 0x6143d469   esp = 0x0012cae4   ebp = 0x0012cae8
    Found by: call frame info
 5  xul.dll!ElementTransitions::`scalar deleting destructor'(unsigned int) + 0xe
    eip = 0x6143d40f   esp = 0x0012caf0   ebp = 0x0012caf4
    Found by: call frame info
 6  xul.dll!ElementTransitionsPropertyDtor [nsTransitionManager.cpp:48175bb06cb1 : 200 + 0x1b]
    eip = 0x6143d3e8   esp = 0x0012cafc   ebp = 0x0012cb10
    Found by: call frame info
 7  xul.dll!nsPropertyTable::PropertyList::DeletePropertyFor(nsPropertyOwner) [nsPropertyTable.cpp:48175bb06cb1 : 361 + 0x24]
    eip = 0x6115b6c9   esp = 0x0012cb18   ebp = 0x0012cb34
    Found by: call frame info
 8  xul.dll!nsPropertyTable::DeleteProperty(nsPropertyOwner,unsigned short,nsIAtom *) [nsPropertyTable.cpp:48175bb06cb1 : 281 + 0x13]
    eip = 0x6115b47b   esp = 0x0012cb3c   ebp = 0x0012cb4c
    Found by: call frame info
 9  xul.dll!nsINode::DeleteProperty(unsigned short,nsIAtom *) [nsGenericElement.cpp:48175bb06cb1 : 243 + 0x23]
    eip = 0x6100f2c2   esp = 0x0012cb54   ebp = 0x0012cb6c
    Found by: call frame info
10  xul.dll!nsINode::DeleteProperty(nsIAtom *) [nsINode.h:48175bb06cb1 : 541 + 0x12]
    eip = 0x60ebbe4a   esp = 0x0012cb74   ebp = 0x0012cb80
    Found by: call frame info
11  xul.dll!ElementTransitions::Destroy() [nsTransitionManager.cpp:48175bb06cb1 : 170 + 0x11]
    eip = 0x6143c0a9   esp = 0x0012cb88   ebp = 0x0012cb90
    Found by: call frame info
12  xul.dll!nsTransitionManager::~nsTransitionManager() [nsTransitionManager.cpp:48175bb06cb1 : 341 + 0x7]
    eip = 0x6143c07b   esp = 0x0012cb98   ebp = 0x0012cba0
    Found by: call frame info
13  xul.dll!nsTransitionManager::`scalar deleting destructor'(unsigned int) + 0xe
    eip = 0x6143d6cf   esp = 0x0012cba8   ebp = 0x0012cbac
    Found by: call frame info
14  xul.dll!nsTransitionManager::Release() [nsTransitionManager.cpp:48175bb06cb1 : 784 + 0xd0]
    eip = 0x6143d691   esp = 0x0012cbb4   ebp = 0x0012cbc8
    Found by: call frame info
15  xul.dll!nsRefPtr&lt;nsTransitionManager>::~nsRefPtr&lt;nsTransitionManager>() [nsAutoPtr.h:48175bb06cb1 : 969 + 0x11]
    eip = 0x61154ef1   esp = 0x0012cbd0   ebp = 0x0012cbd8
    Found by: call frame info
16  xul.dll!nsPresContext::~nsPresContext() [nsPresContext.cpp:48175bb06cb1 : 321 + 0xfc]
    eip = 0x6114f8be   esp = 0x0012cbe0   ebp = 0x0012cbf8
    Found by: call frame info
17  xul.dll!nsRootPresContext::~nsRootPresContext() [nsPresContext.cpp:48175bb06cb1 : 2256 + 0x15]
    eip = 0x611546da   esp = 0x0012cc00   ebp = 0x0012cc04
    Found by: call frame info
18  xul.dll!nsRootPresContext::`scalar deleting destructor'(unsigned int) + 0xe
    eip = 0x6115465f   esp = 0x0012cc0c   ebp = 0x0012cc10
    Found by: call frame info
19  xul.dll!nsPresContext::Release() [nsPresContext.cpp:48175bb06cb1 : 331 + 0xdc]
    eip = 0x6114fc5d   esp = 0x0012cc18   ebp = 0x0012cc34
    Found by: call frame info
20  xul.dll!nsCOMPtr&lt;nsPresContext>::assign_assuming_AddRef(nsPresContext *) [nsCOMPtr.h:48175bb06cb1 : 495 + 0xd]
    eip = 0x60def9c9   esp = 0x0012cc3c   ebp = 0x0012cc48
    Found by: call frame info
21  xul.dll!nsCOMPtr&lt;nsPresContext>::assign_with_AddRef(nsISupports *) [nsCOMPtr.h:48175bb06cb1 : 1181 + 0xb]
    eip = 0x60e08bc7   esp = 0x0012cc50   ebp = 0x0012cc58
    Found by: call frame info
22  xul.dll!nsCOMPtr&lt;nsPresContext>::operator=(nsPresContext *) [nsCOMPtr.h:48175bb06cb1 : 640 + 0xb]
    eip = 0x60e07c33   esp = 0x0012cc60   ebp = 0x0012cc68
    Found by: call frame info
23  xul.dll!DocumentViewerImpl::Destroy() [nsDocumentViewer.cpp:48175bb06cb1 : 1630 + 0xc]
    eip = 0x60e0d3dc   esp = 0x0012cc70   ebp = 0x0012cce8
    Found by: call frame info
24  xul.dll!nsSHistory::EvictContentViewersInRange(int,int) [nsSHistory.cpp:48175bb06cb1 : 881 + 0x18]
    eip = 0x615df984   esp = 0x0012ccf0   ebp = 0x0012cd38
    Found by: call frame info
25  xul.dll!nsSHistory::EvictWindowContentViewers(int,int) [nsSHistory.cpp:48175bb06cb1 : 848 + 0xf]
    eip = 0x615df7e2   esp = 0x0012cd40   ebp = 0x0012cd90
    Found by: call frame info
26  xul.dll!nsSHistory::EvictContentViewers(int,int) [nsSHistory.cpp:48175bb06cb1 : 661 + 0x12]
    eip = 0x615df0a6   esp = 0x0012cd98   ebp = 0x0012cda0
    Found by: call frame info
27  xul.dll!DocumentViewerImpl::Show() [nsDocumentViewer.cpp:48175bb06cb1 : 1937 + 0x29]
    eip = 0x60e0e445   esp = 0x0012cda8   ebp = 0x0012ce68
    Found by: call frame info
28  xul.dll!nsPresContext::EnsureVisible() [nsPresContext.cpp:48175bb06cb1 : 1612 + 0x18]
    eip = 0x61152cfe   esp = 0x0012ce70   ebp = 0x0012ceb4
    Found by: call frame info
29  xul.dll!PresShell::UnsuppressAndInvalidate() [nsPresShell.cpp:48175bb06cb1 : 4553 + 0xa]
    eip = 0x60dde464   esp = 0x0012cebc   ebp = 0x0012ceec
    Found by: call frame info
30  xul.dll!PresShell::UnsuppressPainting() [nsPresShell.cpp:48175bb06cb1 : 4599 + 0x7]
    eip = 0x60dde6fb   esp = 0x0012cef4   ebp = 0x0012cef8
    Found by: call frame info
31  xul.dll!DocumentViewerImpl::LoadComplete(unsigned int) [nsDocumentViewer.cpp:48175bb06cb1 : 1083 + 0x1e]
    eip = 0x60e0b8a6   esp = 0x0012cf00   ebp = 0x0012cf7c
    Found by: call frame info
32  xul.dll!nsDocShell::EndPageLoad(nsIWebProgress *,nsIChannel *,unsigned int) [nsDocShell.cpp:48175bb06cb1 : 5735 + 0x2e]
    eip = 0x615f2772   esp = 0x0012cf84   ebp = 0x0012d358
    Found by: call frame info
33  xul.dll!nsDocShell::OnStateChange(nsIWebProgress *,nsIRequest *,unsigned int,unsigned int) [nsDocShell.cpp:48175bb06cb1 : 5613 + 0x2a]
    eip = 0x615f231e   esp = 0x0012d360   ebp = 0x0012d3d0
    Found by: call frame info
34  xul.dll!nsDocLoader::FireOnStateChange(nsIWebProgress *,nsIRequest *,int,unsigned int) [nsDocLoader.cpp:48175bb06cb1 : 1314 + 0x31]
    eip = 0x616145d5   esp = 0x0012d3d8   ebp = 0x0012d47c
    Found by: call frame info
35  xul.dll!nsDocLoader::doStopDocumentLoad(nsIRequest *,unsigned int) [nsDocLoader.cpp:48175bb06cb1 : 926 + 0x30]
    eip = 0x616137eb   esp = 0x0012d484   ebp = 0x0012d500
    Found by: call frame info
36  xul.dll!nsDocLoader::DocLoaderIsEmpty(int) [nsDocLoader.cpp:48175bb06cb1 : 802 + 0x14]
    eip = 0x61613412   esp = 0x0012d508   ebp = 0x0012d548
    Found by: call frame info
37  xul.dll!nsDocLoader::OnStopRequest(nsIRequest *,nsISupports *,unsigned int) [nsDocLoader.cpp:48175bb06cb1 : 697 + 0xc]
    eip = 0x616130e0   esp = 0x0012d550   ebp = 0x0012d618
    Found by: call frame info
38  xul.dll!nsLoadGroup::RemoveRequest(nsIRequest *,nsISupports *,unsigned int) [nsLoadGroup.cpp:48175bb06cb1 : 680 + 0x2d]
    eip = 0x60bb878f   esp = 0x0012d620   ebp = 0x0012d6c4
    Found by: call frame info
39  xul.dll!nsDocument::DoUnblockOnload() [nsDocument.cpp:48175bb06cb1 : 7117 + 0x2b]
    eip = 0x60e4b60d   esp = 0x0012d6cc   ebp = 0x0012d6ec
    Found by: call frame info
40  xul.dll!nsDocument::UnblockOnload(int) [nsDocument.cpp:48175bb06cb1 : 7064 + 0x7]
    eip = 0x60e4b3c7   esp = 0x0012d6f4   ebp = 0x0012d6fc
    Found by: call frame info
41  xul.dll!nsDocument::DispatchContentLoadedEvents() [nsDocument.cpp:48175bb06cb1 : 4037 + 0x11]
    eip = 0x60e427bc   esp = 0x0012d704   ebp = 0x0012d78c
    Found by: call frame info
42  xul.dll!nsRunnableMethod&lt;nsDocument,void>::Run() [nsThreadUtils.h:48175bb06cb1 : 282 + 0x13]
    eip = 0x60e507a4   esp = 0x0012d794   ebp = 0x0012d794
    Found by: call frame info
43  xul.dll!nsThread::ProcessNextEvent(int,int *) [nsThread.cpp:48175bb06cb1 : 527 + 0x18]
    eip = 0x61b0bcba   esp = 0x0012d79c   ebp = 0x0012d7d0
    Found by: call frame info
44  xul.dll!NS_ProcessNextEvent_P(nsIThread *,int) [nsThreadUtils.cpp:48175bb06cb1 : 250 + 0x15]
    eip = 0x61abd5f3   esp = 0x0012d7d8   ebp = 0x0012d7ec
    Found by: call frame info
45  xul.dll!mozilla::ipc::MessagePump::Run(base::MessagePump::Delegate *) [MessagePump.cpp:48175bb06cb1 : 118 + 0xd]
    eip = 0x61c6fafd   esp = 0x0012d7f4   ebp = 0x0012d820
    Found by: call frame info
46  xul.dll!MessageLoop::RunInternal() [message_loop.cc:48175bb06cb1 : 211 + 0x1e]
    eip = 0x61a26af6   esp = 0x0012d828   ebp = 0x0012d844   ebx = 0x7ffd6000
    Found by: call frame info
47  xul.dll!MessageLoop::RunHandler() [message_loop.cc:48175bb06cb1 : 194 + 0x7]
    eip = 0x61a26a32   esp = 0x0012d84c   ebp = 0x0012d87c
    Found by: call frame info
48  xul.dll!MessageLoop::Run() [message_loop.cc:48175bb06cb1 : 168 + 0x7]
    eip = 0x61a26913   esp = 0x0012d884   ebp = 0x0012d8ac   ebx = 0x0012c6b4
    Found by: call frame info
49  xul.dll!nsBaseAppShell::Run() [nsBaseAppShell.cpp:48175bb06cb1 : 174 + 0xb]
    eip = 0x618a48f0   esp = 0x0012d8b4   ebp = 0x0012d8b8
    Found by: call frame info
50  xul.dll!nsAppShell::Run() [nsAppShell.cpp:48175bb06cb1 : 239 + 0x8]
    eip = 0x618a3f72   esp = 0x0012d8c0   ebp = 0x0012f80c
    Found by: call frame info
51  xul.dll!nsAppStartup::Run() [nsAppStartup.cpp:48175bb06cb1 : 182 + 0x1b]
    eip = 0x616a582a   esp = 0x0012f814   ebp = 0x0012f820
    Found by: call frame info
52  xul.dll!XRE_main [nsAppRunner.cpp:48175bb06cb1 : 3525 + 0x24]
    eip = 0x60a9359f   esp = 0x0012f828   ebp = 0x0012fed0
    Found by: call frame info
53  firefox.exe!NS_internal_main(int,char * *) [nsBrowserApp.cpp:48175bb06cb1 : 158 + 0x11]
    eip = 0x00402482   esp = 0x0012fed8   ebp = 0x0012ff34
    Found by: call frame info
54  firefox.exe!wmain [nsWindowsWMain.cpp:48175bb06cb1 : 120 + 0xc]
    eip = 0x00401c3e   esp = 0x0012ff3c   ebp = 0x0012ff68
    Found by: call frame info
55  firefox.exe!__tmainCRTStartup [crtexe.c : 594 + 0x18]
    eip = 0x00407516   esp = 0x0012ff70   ebp = 0x0012ffb8
    Found by: call frame info
56  firefox.exe!wmainCRTStartup [crtexe.c : 413 + 0x4]
    eip = 0x0040736d   esp = 0x0012ffc0   ebp = 0x0012ffc0   ebx = 0x0012c6b4
    Found by: call frame info
57  kernel32.dll + 0x2f23a
    eip = 0x77e6f23b   esp = 0x0012ffc8   ebp = 0x0012fff0
    Found by: call frame info
Summary: Crash [@ XUL!ElementTransitionsPropertyDtor] after transitions-inline-rewrap-1.html test → Crash [@ XUL!ElementTransitionsPropertyDtor][@ nsRefPtr<nsRefreshDriver>::get()] after GC following transitions reftests
As bzbarsky suggested, it looks like mPresContext is null at this point.  The crash offset (0x20) is consistent with dereferencing the mRefreshDriver of a null mPresContext in nsTransitionManager::TransitionsRemoved.

I think:
 * we probably want nsTransitionManager::Disconnect to destroy the ElementTransitions objects
 * we should disconnect the transition manager before the refresh driver
Assignee: nobody → dbaron
OS: Mac OS X → All
Hardware: x86 → All
(In reply to comment #2)
> whole bunch of unstarred

Do we have a bug on fixing the unittest parser so it doesn't cut out the useful parts of a crashdump, leaving only the useless edges? They are unstarred because every single time, I load the brief log, see there's nothing useful in it, think about loading a full log over 3G, and decide to "leave it for someone else" while I star all the other failures. I presume it's obvious what "leave it for someone else" is code for...
(In reply to comment #5)
> (In reply to comment #2)
> > whole bunch of unstarred
> 
> Do we have a bug on fixing the unittest parser so it doesn't cut out the useful
> parts of a crashdump, leaving only the useless edges? They are unstarred
> because every single time, I load the brief log, see there's nothing useful in
> it, think about loading a full log over 3G, and decide to "leave it for someone
> else" while I star all the other failures. I presume it's obvious what "leave
> it for someone else" is code for...

I just filed bug 536534.


In any case, this looks like it was fixed by my backout.  (And I just relanded the offending patches with fixes.)  Sorry for not backing out sooner.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Blocks: 438871
Whiteboard: [orange]
You need to log in before you can comment on or make changes to this bug.