Last Comment Bug 633471 - crash if I delete a PKCS#11 certificate when smart card is logged out
: crash if I delete a PKCS#11 certificate when smart card is logged out
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Security: UI (show other bugs)
: unspecified
: x86 Linux
: -- normal (vote)
: mozilla14
Assigned To: Kai Engert (:kaie)
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-02-11 02:44 PST by Ludovic Rousseau
Modified: 2012-04-17 07:45 PDT (History)
5 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
untested proposal (5.93 KB, patch)
2011-02-15 14:03 PST, timeless
timeless: feedback-
ludovic.rousseau: feedback-
Details | Diff | Splinter Review
edited version of the previous patch (5.52 KB, patch)
2011-02-21 02:24 PST, Ludovic Rousseau
kaie: review-
Details | Diff | Splinter Review
Patch v3 (8.83 KB, patch)
2011-08-10 07:26 PDT, Kai Engert (:kaie)
kaie: review+
Details | Diff | Splinter Review
v3 ignoring whitespace, slightly easier to review (7.19 KB, patch)
2011-08-10 07:26 PDT, Kai Engert (:kaie)
no flags Details | Diff | Splinter Review

Description Ludovic Rousseau 2011-02-11 02:44:14 PST
User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.63 Safari/534.3
Build Identifier: Mozilla/5.0 (X11; U; Linux x86_64; fr; rv:1.9.1.16) Gecko/20110107 Iceweasel/3.5.16 (like Firefox/3.5.16)

I am using Firefox as packaged by Debian in squeeze/stable on a amd64. It is version 3.5.16-4.

The problem is also present with Firefox 4 beta on Windows XP SP3.

I configured firefox to use an external PKCS#11 module to manage a smart card.

If I C_Login() and C_Logout() from another application, the state of the PKCS#11 module used by firefox is changed and the C_GetSessionInfo() by Firefox returns CKS_RO_PUBLIC_SESSION instead of CKS_RO_USER_FUNCTIONS.
It looks like Firefox tries to display the PIN dialog but crashes.

Reproducible: Always

Steps to Reproduce:
1. configure Firefox to use the external PKCS#11 token
2. display the certificates presents on the token. If you have no certificate on the token then install one.
3. start another application using the PKCS#11 and perform a C_Login()/C_Logout()
4. come back to firefox certificate manager. Select the certiticate and click on "remove"

The PKCS#11 I use if proprietary software (for the moment). The bug should be reproducible by modifying another PKCS#11 to make C_GetSessionInfo() return CKS_RO_PUBLIC_SESSION instead of CKS_RO_USER_FUNCTIONS.
Actual Results:  
crash

Expected Results:  
no crash :-)

gdb backtrace

$ iceweasel -g
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/iceweasel/firefox-bin...(no debugging symbols found)...done.
(gdb) r
Starting program: /usr/lib/iceweasel/firefox-bin 
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffe71f2700 (LWP 21181)]
[New Thread 0x7fffe67e8700 (LWP 21182)]
[New Thread 0x7fffe58ff700 (LWP 21183)]
[New Thread 0x7fffe1cbc700 (LWP 21184)]
[New Thread 0x7fffe14bb700 (LWP 21185)]
[Thread 0x7fffe14bb700 (LWP 21185) exited]
[New Thread 0x7fffe14bb700 (LWP 21188)]
[New Thread 0x7fffdb2ff700 (LWP 21189)]
[New Thread 0x7fffdaafe700 (LWP 21190)]
[New Thread 0x7fffda2fd700 (LWP 21191)]
[New Thread 0x7fffd9afc700 (LWP 21192)]

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff638d6ca in nsCOMPtr (this=0x7fffd8d6e700, row=1, 
    col=0x7fffe3593940, _retval=...)
    at ../../../../dist/include/xpcom/nsCOMPtr.h:545
545	../../../../dist/include/xpcom/nsCOMPtr.h: Aucun fichier ou dossier de ce type.
	in ../../../../dist/include/xpcom/nsCOMPtr.h
Current language:  auto
The current source language is "auto; currently c++".
(gdb) bt
#0  0x00007ffff638d6ca in nsCOMPtr (this=0x7fffd8d6e700, row=1, 
    col=0x7fffe3593940, _retval=...)
    at ../../../../dist/include/xpcom/nsCOMPtr.h:545
#1  nsCertTree::GetCellText (this=0x7fffd8d6e700, row=1, col=0x7fffe3593940, 
    _retval=...) at ../../../../../security/manager/ssl/src/nsCertTree.cpp:1146
#2  0x00007ffff61bfe6e in nsTreeBodyFrame::PaintText (this=0x7fffd8e658a8, 
    aRowIndex=1, aColumn=0x7fffe3593940, aTextRect=..., 
    aPresContext=<value optimized out>, aRenderingContext=..., aDirtyRect=..., 
    aCurrX=@0x7fffffff392c, aTextRTL=0)
    at ../../../../../../../layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3576
#3  0x00007ffff61c0925 in nsTreeBodyFrame::PaintCell (this=0x7fffd8e658a8, 
    aRowIndex=1, aColumn=0x7fffe3593940, aCellRect=<value optimized out>, 
    aPresContext=<value optimized out>, aRenderingContext=..., aDirtyRect=..., 
    aCurrX=@0x7fffffff3a70, aPt=...)
    at ../../../../../../../layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3322
#4  0x00007ffff61c1061 in nsTreeBodyFrame::PaintRow (this=0x7fffd8e658a8, 
    aRowIndex=1, aRowRect=<value optimized out>, 
    aPresContext=<value optimized out>, 
    aRenderingContext=<value optimized out>, aDirtyRect=..., aPt=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
)
    at ../../../../../../../layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3097
#5  0x00007ffff61c1363 in nsTreeBodyFrame::PaintTreeBody (this=0x7fffd8e658a8, 
    aRenderingContext=..., aDirtyRect=..., aPt=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
)
    at ../../../../../../../layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:2900
#6  0x00007ffff61c15ac in PaintTreeBody (aFrame=0x7ffff6cb73d8, aCtx=0x0, 
    aDirtyRect=..., aPt=<value optimized out>)
    at ../../../../../../../layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:2828
#7  0x00007ffff5ed01bc in nsDisplayGeneric::Paint (this=0x7fffd91380d0, 
    aBuilder=<value optimized out>, aCtx=0x7fffd8f992e0, aDirtyRect=...)
    at ../../../layout/generic/../base/nsDisplayList.h:875
#8  0x00007ffff5e9dee8 in nsDisplayList::Paint (this=<value optimized out>, 
    aBuilder=0x7fffffff3ca0, aCtx=0x7fffd8f992e0, aDirtyRect=...)
    at ../../../layout/base/nsDisplayList.cpp:313
#9  0x00007ffff5eae712 in nsLayoutUtils::PaintFrame (
    aRenderingContext=<value optimized out>, aFrame=<value optimized out>, 
    aDirtyRegion=..., aBackground=<value optimized out>)
    at ../../../layout/base/nsLayoutUtils.cpp:1114
#10 0x00007ffff5eb5f1a in PresShell::Paint (this=0x7fffd91ec800, 
    aView=<value optimized out>, aRenderingContext=0x7fffd8f992e0, 
    aDirtyRegion=...) at ../../../layout/base/nsPresShell.cpp:5777
#11 0x00007ffff61010e1 in nsViewManager::RenderViews (this=0x7fffd8fdabc0, 
    aView=<value optimized out>, aRC=..., aRegion=<value optimized out>)
    at ../../../view/src/nsViewManager.cpp:648
#12 0x00007ffff610176e in nsViewManager::Refresh (this=0x7fffd8fdabc0, 
    aView=0x7fffd8e62380, aContext=<value optimized out>, 
    aRegion=<value optimized out>, aUpdateFlags=<value optimized out>)
    at ../../../view/src/nsViewManager.cpp:512
#13 0x00007ffff6101cb7 in nsViewManager::DispatchEvent (this=0x7fffd8fdabc0, 
    aEvent=0x7fffffff4550, aStatus=0x7fffd91ec8d8)
    at ../../../view/src/nsViewManager.cpp:1153
#14 0x00007ffff60fd233 in HandleEvent (aEvent=0x7fffffff4550)
    at ../../../view/src/nsView.cpp:168
#15 0x00007ffff6442cf1 in nsWindow::DispatchEvent (this=0x7fffeb2404e0, 
    aEvent=<value optimized out>, aStatus=@0x7ffff651e74b)
    at ../../../../widget/src/gtk2/nsWindow.cpp:583
---Type <return> to continue, or q <return> to quit---
#16 0x00007ffff6449b72 in nsWindow::OnExposeEvent (this=0x7fffeb2404e0, 
    aWidget=<value optimized out>, aEvent=0x7fffffff4c00)
    at ../../../../widget/src/gtk2/nsWindow.cpp:2464
#17 0x00007ffff6449ec1 in expose_event_cb (widget=0x7fffd8f39a80, 
    event=0x7fffffff4c00) at ../../../../widget/src/gtk2/nsWindow.cpp:5391
#18 0x00007ffff1bbdc78 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#19 0x00007ffff2a0047e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#20 0x00007ffff2a163f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#21 0x00007ffff2a178bd in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#22 0x00007ffff2a17fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#23 0x00007ffff1cd3f7f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#24 0x00007ffff1bb73a1 in gtk_main_do_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#25 0x00007ffff15f17b2 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#26 0x00007ffff15ee26b in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#27 0x00007ffff15f00e1 in gdk_window_process_all_updates ()
   from /usr/lib/libgdk-x11-2.0.so.0
#28 0x00007ffff15f0149 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#29 0x00007ffff15ccd26 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#30 0x00007ffff25516f2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#31 0x00007ffff2555568 in ?? () from /lib/libglib-2.0.so.0
#32 0x00007ffff255571c in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#33 0x00007ffff6460407 in nsBaseAppShell::DoProcessNextNativeEvent (
    this=0x7ffff6cb73d8, mayWait=0)
    at ../../../../widget/src/xpwidgets/nsBaseAppShell.cpp:151
#34 0x00007ffff6460565 in nsBaseAppShell::OnProcessNextEvent (
    this=0x7fffe745a520, thr=0x7fffeb227a10, mayWait=1, 
    recursionDepth=<value optimized out>)
    at ../../../../widget/src/xpwidgets/nsBaseAppShell.cpp:296
#35 0x00007ffff6507619 in nsThread::ProcessNextEvent (this=0x7fffeb227a10, 
    mayWait=1, result=0x7fffffff4f9c)
    at ../../../xpcom/threads/nsThread.cpp:508
#36 0x00007ffff64dd985 in NS_ProcessNextEvent_P (thread=0x7ffff6cb73d8, 
    mayWait=0) at nsThreadUtils.cpp:250
#37 0x00007ffff6325886 in nsXULWindow::ShowModal (this=0x7fffd8ffad50)
    at ../../../../xpfe/appshell/src/nsXULWindow.cpp:415
#38 0x00007ffff6300a89 in nsWindowWatcher::OpenWindowJSInternal (
    this=<value optimized out>, aParent=0x0, aUrl=<value optimized out>, 
    aName=<value optimized out>, aFeatures=<value optimized out>, 
    aDialog=<value optimized out>, argv=0x7fffd8d73480, aCalledFromJS=0, 
    _retval=0x7fffffff5580)
    at ../../../../../embedding/components/windowwatcher/src/nsWindowWatcher.cpp:1011
#39 0x00007ffff6301026 in nsWindowWatcher::OpenWindow (this=0x7fffe74df6a0, 
    aParent=0x0, 
    aUrl=0x7ffff667ec50 "chrome://global/content/commonDialog.xul", 
    aName=0x7ffff656f329 "_blank", 
    aFeatures=0x7ffff656f306 "centerscreen,chrome,modal,titlebar", 
    aArguments=<value optimized out>, _retval=0x7fffffff5580)
    at ../../../../../embedding/components/windowwatcher/src/nsWindowWatcher.cpp:424
#40 0x00007ffff6301bf0 in nsPromptService::DoDialog (
    this=<value optimized out>, aParent=0x0, 
    aParamBlock=<value optimized out>, 
    aChromeURL=0x7ffff667ec50 "chrome://global/content/commonDialog.xul")
    at ../../../../../embedding/components/windowwatcher/src/nsPromptService.cpp:786
---Type <return> to continue, or q <return> to quit---
#41 0x00007ffff63032bd in nsPromptService::PromptPassword (
    this=0x7fffd8ef99d0, parent=<value optimized out>, 
    dialogTitle=<value optimized out>, text=<value optimized out>, 
    password=0x7fffffff5978, checkMsg=<value optimized out>, checkValue=0x0, 
    _retval=0x7fffffff5984)
    at ../../../../../embedding/components/windowwatcher/src/nsPromptService.cpp:620
#42 0x00007ffff62fb252 in nsPrompt::PromptPassword (
    this=<value optimized out>, dialogTitle=0x7fffffff3560, 
    text=<value optimized out>, password=<value optimized out>, 
    checkMsg=<value optimized out>, checkValue=<value optimized out>, 
    _retval=0x7fffffff5984)
    at ../../../../../embedding/components/windowwatcher/src/nsPrompt.cpp:282
#43 0x00007ffff635cfe8 in PK11PasswordPrompt (slot=0x7fffdd078400, 
    retry=<value optimized out>, arg=<value optimized out>)
    at ../../../../../security/manager/ssl/src/nsNSSCallbacks.cpp:837
#44 0x00007ffff47df40b in ?? () from /usr/lib/libnss3.so.1d
#45 0x00007ffff6371285 in nsNSSCertificate::MarkForPermDeletion (
    this=0x7fffd8a5e940)
    at ../../../../../security/manager/ssl/src/nsNSSCertificate.cpp:257
#46 0x00007ffff6385376 in nsNSSCertificateDB::DeleteCertificate (
    this=<value optimized out>, aCert=<value optimized out>)
    at ../../../../../security/manager/ssl/src/nsNSSCertificateDB.cpp:979
#47 0x00007ffff638f3aa in nsCertTree::DeleteEntryObject (this=0x7fffd8d6e700, 
    index=<value optimized out>)
    at ../../../../../security/manager/ssl/src/nsCertTree.cpp:869
#48 0x00007ffff651217e in NS_InvokeByIndex_P (that=0x7ffff6cb73d8, 
    methodIndex=0, paramCount=4132562763, params=0x7fffd8a55c18)
    at ../../../../../../../xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_linux.cpp:208
#49 0x00007ffff5d54bc8 in XPCWrappedNative::CallMethod (ccx=..., 
    mode=<value optimized out>)
    at ../../../../../js/src/xpconnect/src/xpcwrappednative.cpp:2456
#50 0x00007ffff5d5c493 in XPC_WN_CallMethod (cx=0x7fffd8fc9400, 
    obj=<value optimized out>, argc=<value optimized out>, 
    argv=<value optimized out>, vp=<value optimized out>)
    at ../../../../../js/src/xpconnect/src/xpcwrappednativejsops.cpp:1590
#51 0x00007ffff4f5d457 in js_Invoke (cx=0x7fffd8fc9400, 
    argc=<value optimized out>, vp=0x7fffd8e10198, flags=<value optimized out>)
    at ../../../js/src/jsinterp.cpp:1386
#52 0x00007ffff4f4e594 in js_Interpret (cx=0x7fffd8fc9400)
    at ../../../js/src/jsinterp.cpp:5181
#53 0x00007ffff4f5d461 in js_Invoke (cx=0x7fffd8fc9400, 
    argc=<value optimized out>, vp=0x7fffd8e10040, flags=<value optimized out>)
    at ../../../js/src/jsinterp.cpp:1394
#54 0x00007ffff4f5d7fa in js_InternalInvoke (cx=0x7fffd8fc9400, 
    obj=0x7fffd8e75900, fval=140737033388032, flags=0, argc=0, 
    argv=<value optimized out>, rval=0x7fffffff68b0)
    at ../../../js/src/jsinterp.cpp:1447
#55 0x00007ffff4f257e5 in JS_CallFunctionValue (cx=0x7ffff6cb73d8, obj=0x0, 
    fval=140737325950795, argc=<value optimized out>, 
    argv=<value optimized out>, rval=<value optimized out>)
    at ../../../js/src/jsapi.cpp:5196
#56 0x00007ffff6109984 in nsJSContext::CallEventHandler (this=0x7fffd8fd8520, 
    aTarget=<value optimized out>, aScope=<value optimized out>, 
    aHandler=0x7fffe4e1c000, aargv=<value optimized out>, arv=0x7fffffff6aa0)
    at ../../../../dom/src/base/nsJSEnvironment.cpp:2169
#57 0x00007ffff613c97b in nsJSEventListener::HandleEvent (this=0x7fffd8e20100, 
    aEvent=0x7fffd8d7c208)
---Type <return> to continue, or q <return> to quit---
    at ../../../../dom/src/events/nsJSEventListener.cpp:247
#58 0x00007ffff6029e82 in nsEventListenerManager::HandleEventSubType (
    this=<value optimized out>, aListenerStruct=0x7fffd90cdf58, 
    aListener=0x7fffd8e20100, aDOMEvent=0x7fffd8d7c208, 
    aCurrentTarget=0x7fffe406fab0, aPhaseFlags=1)
    at ../../../../content/events/src/nsEventListenerManager.cpp:1098
#59 0x00007ffff602a22c in nsEventListenerManager::HandleEvent (
    this=<value optimized out>, aPresContext=<value optimized out>, 
    aEvent=0x7fffffff6f70, aDOMEvent=<value optimized out>, 
    aCurrentTarget=<value optimized out>, aFlags=<value optimized out>, 
    aEventStatus=0x7fffffff6ea8)
    at ../../../../content/events/src/nsEventListenerManager.cpp:1206
#60 0x00007ffff604348e in nsEventTargetChainItem::HandleEvent (
    this=0x7fffd88e1aa0, aVisitor=..., aFlags=6, 
    aMayHaveNewListenerManagers=-469304656)
    at ../../../../content/events/src/nsEventDispatcher.cpp:236
#61 0x00007ffff60435c3 in nsEventTargetChainItem::HandleEventTargetChain (
    this=<value optimized out>, aVisitor=..., aFlags=6, aCallback=0x0, 
    aMayHaveNewListenerManagers=1)
    at ../../../../content/events/src/nsEventDispatcher.cpp:300
#62 0x00007ffff6043a82 in nsEventDispatcher::Dispatch (
    aTarget=<value optimized out>, aPresContext=<value optimized out>, 
    aEvent=0x7fffffff6f70, aDOMEvent=0x0, aEventStatus=0x7fffffff6fdc, 
    aCallback=<value optimized out>)
    at ../../../../content/events/src/nsEventDispatcher.cpp:514
#63 0x00007ffff5eb52d4 in PresShell::HandleDOMEventWithTarget (
    this=0x7fffd91ec800, aTargetContent=0x7fffe406fab0, aEvent=0x7fffffff6f70, 
    aStatus=<value optimized out>) at ../../../layout/base/nsPresShell.cpp:6371
#64 0x00007ffff5f9ab8a in nsButtonBoxFrame::DoMouseClick (this=0x7fffd8e7d5c8, 
    aEvent=0x7fffffff72d0, aTrustEvent=1)
    at ../../../../../layout/xul/base/src/nsButtonBoxFrame.cpp:160
#65 0x00007ffff5f9ad21 in nsButtonBoxFrame::HandleEvent (this=0x7fffd8e7d5c8, 
    aPresContext=0x7fffd8e06000, aEvent=0x7fffffff72d0, 
    aEventStatus=0x7fffffff7118)
    at ../../../../../layout/xul/base/src/nsButtonBoxFrame.cpp:130
#66 0x00007ffff60436ba in nsEventTargetChainItem::HandleEventTargetChain (
    this=<value optimized out>, aVisitor=..., aFlags=6, 
    aCallback=0x7fffffff71b0, 
    aMayHaveNewListenerManagers=<value optimized out>)
    at ../../../../content/events/src/nsEventDispatcher.cpp:346
#67 0x00007ffff6043a82 in nsEventDispatcher::Dispatch (
    aTarget=<value optimized out>, aPresContext=<value optimized out>, 
    aEvent=0x7fffffff72d0, aDOMEvent=0x0, aEventStatus=0x7fffffff774c, 
    aCallback=<value optimized out>)
    at ../../../../content/events/src/nsEventDispatcher.cpp:514
#68 0x00007ffff5eb4d93 in PresShell::HandleEventInternal (this=0x7fffd91ec800, 
    aEvent=0x7fffffff72d0, aView=0x0, aStatus=0x7fffffff774c)
    at ../../../layout/base/nsPresShell.cpp:6325
#69 0x00007ffff5eb5323 in PresShell::HandleEventWithTarget (
    this=0x7fffd91ec800, aEvent=0x7fffffff72d0, aFrame=<value optimized out>, 
    aContent=<value optimized out>, aStatus=0x0)
    at ../../../layout/base/nsPresShell.cpp:6230
#70 0x00007ffff603405c in nsEventStateManager::CheckForAndDispatchClick (
    this=0x7fffe7406a80, aPresContext=<value optimized out>, 
    aEvent=0x7fffffff7880, aStatus=0x7fffffff774c)
    at ../../../../content/events/src/nsEventStateManager.cpp:4073
#71 0x00007ffff60344a2 in nsEventStateManager::PostHandleEvent (
    this=0x7fffe7406a80, aPresContext=0x7fffd8e06000, aEvent=0x7fffffff7880, 
    aTargetFrame=0x7fffd8e7d5c8, aStatus=0x7fffffff774c, aView=0x7fffd8fccb00)
---Type <return> to continue, or q <return> to quit---
    at ../../../../content/events/src/nsEventStateManager.cpp:3036
#72 0x00007ffff5eb4e6e in PresShell::HandleEventInternal (this=0x7fffd91ec800, 
    aEvent=0x7fffffff7880, aView=<value optimized out>, aStatus=0x7fffffff774c)
    at ../../../layout/base/nsPresShell.cpp:6346
#73 0x00007ffff5eb544a in PresShell::HandlePositionedEvent (
    this=0x7fffd91ec800, aView=0x7fffd8fccb00, aTargetFrame=0x7fffffff7630, 
    aEvent=0x7fffffff7880, aEventStatus=0x7fffffff774c)
    at ../../../layout/base/nsPresShell.cpp:6213
#74 0x00007ffff5eb5b1a in PresShell::HandleEvent (this=0x7fffd91ec800, 
    aView=0x7fffd8fccb00, aEvent=0x7fffffff7880, aEventStatus=0x7fffffff774c)
    at ../../../layout/base/nsPresShell.cpp:6073
#75 0x00007ffff6100004 in nsViewManager::HandleEvent (
    this=<value optimized out>, aView=0x0, aPoint=<value optimized out>, 
    aEvent=0x7fffffff7880, aCaptured=0)
    at ../../../view/src/nsViewManager.cpp:1400
#76 0x00007ffff610221e in nsViewManager::DispatchEvent (this=0x7fffd8fdabc0, 
    aEvent=0x7fffffff7880, aStatus=0x7fffffff783c)
    at ../../../view/src/nsViewManager.cpp:1359
#77 0x00007ffff60fd233 in HandleEvent (aEvent=0x7fffffff7880)
    at ../../../view/src/nsView.cpp:168
#78 0x00007ffff6442cf1 in nsWindow::DispatchEvent (this=0x7fffeb240370, 
    aEvent=<value optimized out>, aStatus=@0x7ffff651e74b)
    at ../../../../widget/src/gtk2/nsWindow.cpp:583
#79 0x00007ffff644c505 in nsWindow::OnButtonReleaseEvent (this=0x7fffeb240370, 
    aWidget=<value optimized out>, aEvent=0x7fffd8a3be10)
    at ../../../../widget/src/gtk2/nsWindow.cpp:2975
#80 0x00007ffff644c545 in button_release_event_cb (widget=0x7fffd8f39a80, 
    event=0x7fffd8a3be10) at ../../../../widget/src/gtk2/nsWindow.cpp:5542
#81 0x00007ffff1bbdc78 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#82 0x00007ffff2a0047e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#83 0x00007ffff2a163f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#84 0x00007ffff2a178bd in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#85 0x00007ffff2a17fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#86 0x00007ffff1cd3f7f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#87 0x00007ffff1bb6163 in gtk_propagate_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#88 0x00007ffff1bb721b in gtk_main_do_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#89 0x00007ffff160a3cc in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#90 0x00007ffff25516f2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#91 0x00007ffff2555568 in ?? () from /lib/libglib-2.0.so.0
#92 0x00007ffff255571c in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#93 0x00007ffff6460407 in nsBaseAppShell::DoProcessNextNativeEvent (
    this=0x7ffff6cb73d8, mayWait=0)
    at ../../../../widget/src/xpwidgets/nsBaseAppShell.cpp:151
#94 0x00007ffff6460565 in nsBaseAppShell::OnProcessNextEvent (
    this=0x7fffe745a520, thr=0x7fffeb227a10, mayWait=0, 
    recursionDepth=<value optimized out>)
    at ../../../../widget/src/xpwidgets/nsBaseAppShell.cpp:296
#95 0x00007ffff6507619 in nsThread::ProcessNextEvent (this=0x7fffeb227a10, 
    mayWait=1, result=0x7fffffff806c)
    at ../../../xpcom/threads/nsThread.cpp:508
#96 0x00007ffff64dd985 in NS_ProcessNextEvent_P (thread=0x7ffff6cb73d8, 
    mayWait=0) at nsThreadUtils.cpp:250
#97 0x00007ffff6460651 in nsBaseAppShell::Run (this=0x7fffe745a520)
    at ../../../../widget/src/xpwidgets/nsBaseAppShell.cpp:170
#98 0x00007ffff633980c in nsAppStartup::Run (this=0x7fffe74e1fc0)
---Type <return> to continue, or q <return> to quit---
    at ../../../../../toolkit/components/startup/src/nsAppStartup.cpp:193
#99 0x00007ffff5d2c037 in XRE_main (argc=<value optimized out>, 
    argv=<value optimized out>, aAppData=<value optimized out>)
    at ../../../toolkit/xre/nsAppRunner.cpp:3331
#100 0x000000000040246d in ?? ()
#101 0x00007ffff7368c4d in __libc_start_main (main=<value optimized out>, 
    argc=<value optimized out>, ubp_av=<value optimized out>, 
    init=<value optimized out>, fini=<value optimized out>, 
    rtld_fini=<value optimized out>, stack_end=0x7fffffffd9d8)
    at libc-start.c:228
#102 0x0000000000401cb9 in ?? ()
#103 0x00007fffffffd9d8 in ?? ()
#104 0x000000000000001c in ?? ()
#105 0x0000000000000001 in ?? ()
#106 0x00007fffffffdda8 in ?? ()
#107 0x0000000000000000 in ?? ()
(gdb) 



I also used PKCS11-spy from OpenSC to log the calls to the PKCS#11 token from Firefox.

between the certiticate selection and the crash Firefox does only ONE PKCS#11 call:


103: C_GetSessionInfo
[in] hSession = 0x1
[out] pInfo: 
      slotID:                  0
      state:                  '           CKS_RO_PUBLIC_SESSION'
      flags:                   4
        CKF_SERIAL_SESSION               
      ulDeviceError:           0
Returned:  0 CKR_OK


If I log the PKCS#11 token calls in a normal case (without using an external application to logout the user from the card) I get:

103: C_GetSessionInfo
[in] hSession = 0x1
[out] pInfo: 
      slotID:                  0
      state:                  '           CKS_RO_USER_FUNCTIONS'
      flags:                   4
        CKF_SERIAL_SESSION               
      ulDeviceError:           0
Returned:  0 CKR_OK

Etc...


The state returned by C_GetSessionInfo() in the case of crash is CKS_RO_PUBLIC_SESSION instead of the expected CKS_RO_USER_FUNCTIONS.

It looks like firefox is trying to display the PIN dialog to loggin again and crashes when doing it. I can see an empty frame displayed just before the crash and when gdb takes control.
Comment 1 Anthony Hughes (:ashughes) [GFX][QA][Mentor] 2011-02-11 13:49:21 PST
Can you reproduce this on any other versions of Firefox (3.6, 4.0b11)?
Can you provide a link to any crash reports for this issue?
How frequently when trying your steps does this crash occur?
Comment 2 timeless 2011-02-13 15:22:38 PST
1119 nsCertTree::GetCellText(PRInt32 row, nsITreeColumn* col, 
1120                         nsAString& _retval)

1141   nsRefPtr<nsCertTreeDispInfo> certdi = 
1142     GetDispInfoAtIndex(row, &absoluteCertOffset);
1143   if (!certdi)
1144     return NS_ERROR_FAILURE;
1145 
1146   nsCOMPtr<nsIX509Cert> cert = certdi->mCert;
1147   if (!cert && certdi->mAddonInfo) {
1148     cert = certdi->mAddonInfo->mCert;
1149   }

please use info locals....

you should be able to do:

info locals
list
up
info locals
p *certdi
Comment 3 Ludovic Rousseau 2011-02-14 00:47:51 PST
(In reply to comment #1)
> Can you reproduce this on any other versions of Firefox (3.6, 4.0b11)?
> Can you provide a link to any crash reports for this issue?
> How frequently when trying your steps does this crash occur?

I can reproduce the crash using Firefox 3.6.13 on Mac OS X Snow Leopard.

The problem is then present on:
- Linux using iceweasel 3.5.16
- Mac OS X using firefox 3.6.13
- Windows XP using firefox 4.0 beta 11
Comment 4 Ludovic Rousseau 2011-02-14 00:55:26 PST
(In reply to comment #2)
> you should be able to do:
> 
> info locals
> list
> up
> info locals
> p *certdi

Using version 3.5.16:

(gdb) info locals
No locals.

(gdb) list
540	in ../../../../dist/include/xpcom/nsCOMPtr.h

(gdb) up
#1  nsCertTree::GetCellText (this=0x7fffd6619d80, row=1, col=0x7fffeb26c3a0, 
    _retval=...) at ../../../../../security/manager/ssl/src/nsCertTree.cpp:1146
1146	../../../../../security/manager/ssl/src/nsCertTree.cpp: Aucun fichier ou dossier de ce type.
	in ../../../../../security/manager/ssl/src/nsCertTree.cpp

(gdb) info locals
rv = <value optimized out>
colID = <value optimized out>
absoluteCertOffset = 0
cert = {<nsCOMPtr_base> = {mRawPtr = 0x7ffff6cb73d8}, <No data fields>}
colIndex = 32767
arrayLength = 3945072280
el = <value optimized out>
certdi = {mRawPtr = 0x7fffeb29f168}
arrayIndex = <value optimized out>

(gdb) p *certdi
One of the arguments you tried to pass to operator* could not be converted to what the function wants.

I have the crash in 100% of the cases. So it is easy to generate traces and give more information if needed.
Comment 5 timeless 2011-02-14 02:57:41 PST
oops, right, comptr... sorry.

p *cert->mRawPtr
p *certdi->mRawPtr

i guess you're using an iceweasel binary deb, could you apt-get source?

i'd actually prefer for you to build mozilla from hg, https://developer.mozilla.org/En/Simple_Firefox_build (please do a 'debug build')

you could speed up debugging by visiting irc.mozilla.org, someone there should be able to walk you through this faster than relying on bugzilla+email+sleep cycles.
Comment 6 Ludovic Rousseau 2011-02-14 06:35:56 PST
(gdb) p cert
$3 = {<nsCOMPtr_base> = {mRawPtr = 0x7ffff6cb73d8}, <No data fields>}

(gdb) p cert->mRawPtr
$4 = (nsISupports *) 0x7ffff6cb73d8

(gdb) p *cert->mRawPtr
warning: can't find linker symbol for virtual table for `nsISupports' value
warning:   found `nsGenericModule::QueryInterface(nsID const&, void**)' instead
$5 = {_vptr.nsISupports = 0x7ffff64deaa4}

(gdb) p *cert->mRawPtr
warning: can't find linker symbol for virtual table for `nsISupports' value
warning:   found `nsGenericModule::QueryInterface(nsID const&, void**)' instead
$5 = {_vptr.nsISupports = 0x7ffff64deaa4}
(gdb) p *certdi->mRawPtr
$6 = {<nsICertTreeItem> = {<nsISupports> = {
      _vptr.nsISupports = 0x7ffff6cb73d8}, <No data fields>}, mRefCnt = {
    mValue = 2}, mAddonInfo = {mRawPtr = 0x7ffff6cb8610}, 
  mTypeOfEntry = nsCertTreeDispInfo::direct_db, 
  mAsciiHost = {<nsACString_internal> = {
      mData = 0x71 <Address 0x71 out of bounds>, mLength = 119946192, 
      mFlags = 0}, <No data fields>}, mPort = 130087968, 
  mOverrideBits = nsCertOverride::ob_None, mIsTemporary = -34496, 
  mCert = {<nsCOMPtr_base> = {mRawPtr = 0x7fffe2d1d370}, <No data fields>}}

I will try to rebuild in debug mode.
Comment 7 timeless 2011-02-14 07:43:03 PST
grr.

use:
x/wa (void**) (cert->mRawPtr)

to find the type for mRawPtr

then

p *((nsWhateverThatTypeWas*)cert->mRawPtr))

see https://developer.mozilla.org/en/Debugging_Mozilla_on_Linux_FAQ

and the same for the other one.
Comment 8 Ludovic Rousseau 2011-02-14 08:14:13 PST
(gdb) x/wa (void**) (cert->mRawPtr)
0x7ffff6cb73d8 <_ZTV16nsGenericFactory+152>:	0xfffffffff64deaa4

(gdb) p *((nsGenericFactory*)cert->mRawPtr))
Junk after end of expression.


I also tried to get the source code using hg but got an error:

$ hg clone http://hg.mozilla.org/mozilla-central/destination directory: mozilla-central
requesting all changes
adding changesets
adding manifests
adding file changes
transaction abort!
rollback completed
abandon : premature EOF reading chunk (got 2 bytes, expected 519)
Comment 9 timeless 2011-02-14 13:48:02 PST
(gdb) p *((nsGenericFactory*)(cert->mRawPtr))

$ hg clone http://hg.mozilla.org/mozilla-central
Comment 10 Ludovic Rousseau 2011-02-15 00:15:35 PST
(gdb) p *((nsGenericFactory*)(cert->mRawPtr))
warning: can't find linker symbol for virtual table for `nsISupports' value
warning:   found `nsGenericModule::QueryInterface(nsID const&, void**)' instead
warning: can't find linker symbol for virtual table for `nsGenericFactory' value
warning:   found `nsGenericModule::QueryInterface(nsID const&, void**)' instead
$3 = {<nsIGenericFactory> = {<nsIFactory> = {<nsISupports> = {
        _vptr.nsISupports = 0x7ffff64deaa4}, <No data fields>}, <No data fields>}, <nsIClassInfo> = {<nsISupports> = {
      _vptr.nsISupports = 0x7ffff64deb3f}, <No data fields>}, mRefCnt = {
    mValue = 4132301558}, mInfo = 0x7ffff64de315}
Comment 11 timeless 2011-02-15 00:20:38 PST
actually, you shouldn't be hitting nsGenericModule, that means something's wrong.

perhaps you don't have enough symbols?
Comment 12 Ludovic Rousseau 2011-02-15 01:01:19 PST
I am building the mercurial version in debug mode.
Please wait... :-)
Comment 13 Ludovic Rousseau 2011-02-15 01:52:01 PST
Using the mercurial version I still have the crash (as expected)


Program received signal SIGSEGV, Segmentation fault.
nsRefPtr (this=0x7fffde53ad30, index=0, outAbsoluteCertOffset=0x7ffff69e0e85)
    at ../../../../dist/include/nsAutoPtr.h:985
985	            mRawPtr->AddRef();

(gdb) bt
#0  nsRefPtr (this=0x7fffde53ad30, index=0, 
    outAbsoluteCertOffset=0x7ffff69e0e85)
    at ../../../../dist/include/nsAutoPtr.h:985
#1  nsCertTree::GetDispInfoAtIndex (this=0x7fffde53ad30, index=0, 
    outAbsoluteCertOffset=0x7ffff69e0e85)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:341
#2  0x00007ffff6398a09 in nsCertTree::GetCellText (this=0x7fffde53ad30, row=1, 
    col=0x7fffe16e53e0, _retval=...)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:1142
#3  0x00007ffff5d76244 in nsTreeBodyFrame::PaintText (this=0x7fffdfaa9c78, 
    aRowIndex=<value optimized out>, aColumn=0x7fffe16e53e0, aTextRect=..., 
    aPresContext=<value optimized out>, aRenderingContext=..., aDirtyRect=..., 
    aCurrX=@0x7fffffff426c, aTextRTL=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3548
#4  0x00007ffff5d8505c in nsTreeBodyFrame::PaintCell (this=0x7fffdfaa9c78, 
    aRowIndex=<value optimized out>, aColumn=0x7fffe16e53e0, 
    aCellRect=<value optimized out>, aPresContext=<value optimized out>, 
    aRenderingContext=<value optimized out>, aDirtyRect=..., 
    aCurrX=@0x7fffffff4400, aPt=...)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3291
#5  0x00007ffff5d860a9 in nsTreeBodyFrame::PaintRow (this=0x7fffdfaa9c78, 
    aRowIndex=1, aRowRect=<value optimized out>, 
    aPresContext=<value optimized out>, 
    aRenderingContext=<value optimized out>, aDirtyRect=<value optimized out>, 
    aPt=...)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3066
#6  0x00007ffff5d869c4 in nsTreeBodyFrame::PaintTreeBody (this=0x7fffdfaa9c78, 
    aRenderingContext=<value optimized out>, aDirtyRect=<value optimized out>, 
    aPt=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:2869
#7  0x00007ffff5d86cd8 in PaintTreeBody (aFrame=0x100000001, aCtx=0x0, 
    aDirtyRect=..., aPt=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:2794
#8  0x00007ffff53ff801 in nsDisplayGeneric::Paint (this=0x7fffdfbe79f8, 
    aBuilder=<value optimized out>, aCtx=0x7fffe21a4100)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/forms/../base/nsDisplayList.h:1257
#9  0x00007ffff532c3e7 in mozilla::FrameLayerBuilder::DrawThebesLayer (
    aLayer=<value optimized out>, aContext=<value optimized out>, 
    aRegionToDraw=<value optimized out>, 
    aRegionToInvalidate=<value optimized out>, 
    aCallbackData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/FrameLayerBuilder.cpp:1853
#10 0x00007ffff6af316f in mozilla::layers::BasicThebesLayer::PaintBuffer (
    this=0x7fffdfac2000, aContext=0x0, aRegionToDraw=..., 
    aRegionToInvalidate=..., 
    aCallback=0x7ffff7b9adc8 <nsTArrayHeader::sEmptyHdr>, aCallbackData=0xf77)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:425
#11 mozilla::layers::BasicShadowableThebesLayer::PaintBuffer (
    this=0x7fffdfac2000, aContext=0x0, aRegionToDraw=..., 
---Type <return> to continue, or q <return> to quit---
    aRegionToInvalidate=..., 
    aCallback=0x7ffff7b9adc8 <nsTArrayHeader::sEmptyHdr>, aCallbackData=0xf77)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1766
#12 0x00007ffff6af4c40 in mozilla::layers::BasicThebesLayer::Paint (
    this=0x7fffdfac2000, aContext=0x7fffdeb2e790, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:576
#13 0x00007ffff6af38cf in mozilla::layers::BasicLayerManager::PaintLayer (
    this=0x7fffe179d560, aLayer=0x7fffdfac2000, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0x7fffffff5130)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1431
#14 0x00007ffff6af34f2 in mozilla::layers::BasicLayerManager::PaintLayer (
    this=0x7fffe179d560, aLayer=<value optimized out>, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0x7fffffff5130)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1435
#15 0x00007ffff6af430e in mozilla::layers::BasicLayerManager::EndTransactionInternal (this=0x7fffe179d560, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0x7fffffff5130)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1298
#16 0x00007ffff6af49f9 in mozilla::layers::BasicShadowLayerManager::EndTransaction (this=0x100000001, aCallback=0, aCallbackData=0x7ffff69e0e85)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:2698
#17 0x00007ffff5379b71 in nsDisplayList::PaintForFrame (this=0x7fffe179d560, 
    aBuilder=0x7fffffff5130, aCtx=<value optimized out>, aForFrame=0x3f800000, 
    aFlags=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDisplayList.cpp:540
#18 0x00007ffff53a5102 in nsLayoutUtils::PaintFrame (
    aRenderingContext=<value optimized out>, aFrame=0x7fffffff5650, 
    aDirtyRegion=<value optimized out>, aBackstop=<value optimized out>, 
    aFlags=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsLayoutUtils.cpp:1557
#19 0x00007ffff53cee96 in PresShell::Paint (this=0x7fffe097f400, 
    aDisplayRoot=0x7fffde3e3380, aViewToPaint=<value optimized out>, 
    aWidgetToPaint=0x7fffce622ef0, aDirtyRegion=<value optimized out>, 
    aIntDirtyRegion=<value optimized out>, aPaintDefaultBackground=0, 
    aWillSendDidPaint=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6188
#20 0x00007ffff5a8e3bc in nsViewManager::RenderViews (this=0x7fffd7717120, 
    aView=0x7fffde3e3380, aWidget=0x2c682e7961727241, 
    aRegion=<value optimized out>, aIntRegion=..., aPaintDefaultBackground=0, 
    aWillSendDidPaint=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cp---Type <return> to continue, or q <return> to quit---
p:458
#21 0x00007ffff5a8e790 in nsViewManager::Refresh (this=0x7fffd7717120, 
    aView=0x7fffde3e3380, aWidget=0x7fffce622ef0, aRegion=..., aUpdateFlags=1)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:424
#22 0x00007ffff5a91d2b in nsViewManager::DispatchEvent (this=0x7fffd7717120, 
    aEvent=0x7fffffff5cc0, aView=<value optimized out>, 
    aStatus=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:925
#23 0x00007ffff5a8ad55 in HandleEvent (aEvent=0x7fffffff5cc0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsView.cpp:161
#24 0x00007ffff65991ef in nsWindow::DispatchEvent (this=0x7fffce622ef0, 
    aEvent=0x7fffffff5cc0, aStatus=@0x7fffffff5eb4)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:564
#25 0x00007ffff65a0eb7 in nsWindow::OnExposeEvent (this=0x7fffce622ef0, 
    aWidget=<value optimized out>, aEvent=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:2251
#26 0x00007ffff65a12e1 in expose_event_cb (widget=0x7fffd80e5c00, 
    event=0x7fffffff63e0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:5549
#27 0x00007ffff3954c78 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#28 0x00007ffff1e8147e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#29 0x00007ffff1e973f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#30 0x00007ffff1e988bd in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#31 0x00007ffff1e98fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#32 0x00007ffff3a6af7f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#33 0x00007ffff394e3a1 in gtk_main_do_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#34 0x00007ffff2ca17b2 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#35 0x00007ffff2c9e26b in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#36 0x00007ffff2ca00e1 in gdk_window_process_all_updates ()
   from /usr/lib/libgdk-x11-2.0.so.0
#37 0x00007ffff2ca0149 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#38 0x00007ffff2c7cd26 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#39 0x00007ffff15c76f2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#40 0x00007ffff15cb568 in ?? () from /lib/libglib-2.0.so.0
#41 0x00007ffff15cb71c in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#42 0x00007ffff65d4078 in nsBaseAppShell::DoProcessNextNativeEvent (
    this=0x100000001, mayWait=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:173
#43 0x00007ffff65d451f in nsBaseAppShell::OnProcessNextEvent (
    this=0x7fffe674ebe0, thr=0x7fffe6710200, mayWait=1, 
    recursionDepth=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:315
#44 0x00007ffff69cd3e1 in nsThread::ProcessNextEvent (this=0x7fffe6710200, 
    mayWait=1, result=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/threads/nsThread.cpp:597
#45 0x00007ffff6950ba4 in NS_ProcessNextEvent_P (thread=0x100000001, mayWait=0)
    at nsThreadUtils.cpp:250
#46 0x00007ffff629a4a3 in nsXULWindow::ShowModal (this=0x7fffce011e00)
---Type <return> to continue, or q <return> to quit---
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpfe/appshell/src/nsXULWindow.cpp:419
#47 0x00007ffff623417b in nsWindowWatcher::OpenWindowJSInternal (
    this=<value optimized out>, aParent=0x0, aUrl=<value optimized out>, 
    aName=<value optimized out>, aFeatures=<value optimized out>, 
    aDialog=<value optimized out>, argv=0x7fffce6328e0, aCalledFromJS=0, 
    _retval=0x7fffffff7558)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/embedding/components/windowwatcher/src/nsWindowWatcher.cpp:1026
#48 0x00007ffff62358ee in nsWindowWatcher::OpenWindow (
    this=<value optimized out>, aParent=0x0, 
    aUrl=0x7fffce6327c0 "chrome://global/content/commonDialog.xul", 
    aName=0x7fffce446130 "_blank", 
    aFeatures=0x7fffce6328b0 "centerscreen,chrome,modal,titlebar", 
    aArguments=0x7fffce4e5510, _retval=0x7fffffff7558)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/embedding/components/windowwatcher/src/nsWindowWatcher.cpp:423
#49 0x00007ffff69ef8b2 in NS_InvokeByIndex_P (that=<value optimized out>, 
    methodIndex=<value optimized out>, paramCount=<value optimized out>, 
    params=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:195
#50 0x00007ffff60b911a in CallMethodHelper::Invoke (this=0x7fffffff74a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:3126
#51 CallMethodHelper::Call (this=0x7fffffff74a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2392
#52 0x00007ffff60b4663 in XPCWrappedNative::CallMethod (ccx=..., 
    mode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2356
#53 0x00007ffff60c29a4 in XPC_WN_CallMethod (cx=0x7fffdfaf1c00, argc=5, 
    vp=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1613
#54 0x00007ffff6e9a8a7 in CallJSNative (cx=0x7fffdfaf1c00, 
    entryFrame=<value optimized out>, inlineCallCount=2, 
    interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jscntxtinlines.h:697
#55 js::Interpret (cx=0x7fffdfaf1c00, entryFrame=<value optimized out>, 
    inlineCallCount=2, interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:4726
#56 0x00007ffff6c463bf in js::RunScript (cx=0x7fffdfaf1c00, 
    script=0x7fffdc086b20, fp=0x7fffe33fe270)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:649
#57 0x00007ffff6c4a4c9 in js::Invoke (cx=0x7fffdfaf1c00, 
    argsRef=<value optimized out>, flags=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:729
#58 0x00007ffff6c2818f in js_fun_apply (cx=0x7fffdfaf1c00, 
    argc=<value optimized out>, vp=0x7fffe33fe218)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsfun.cpp:2195
#59 0x00007ffff6e9a8a7 in CallJSNative (cx=0x7fffdfaf1c00, 
    entryFrame=<value optimized out>, inlineCallCount=0, 
    interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jscntxtinlines.h:697
#60 js::Interpret (cx=0x7fffdfaf1c00, entryFrame=<value optimized out>, 
---Type <return> to continue, or q <return> to quit---
    inlineCallCount=0, interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:4726
#61 0x00007ffff6c463bf in js::RunScript (cx=0x7fffdfaf1c00, 
    script=0x7fffd79a9800, fp=0x7fffe33fe1c0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:649
#62 0x00007ffff6c4a4c9 in js::Invoke (cx=0x7fffdfaf1c00, 
    argsRef=<value optimized out>, flags=8192)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:729
#63 0x00007ffff6c4b587 in js::ExternalInvoke (cx=0x7fffdfaf1c00, 
    thisv=<value optimized out>, fval=..., argc=3460007448, 
    argv=0x7fffffff8ee8, rval=0x7fffffff9060)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:850
#64 0x00007ffff6ba07e2 in JS_CallFunctionValue (cx=0x7fffdfaf1c00, 
    obj=0x7fffce3b8618, fval=..., argc=5, argv=0x7fffffff8ee8, 
    rval=0x7fffffff9060)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsapi.cpp:5166
#65 0x00007ffff60a79d7 in nsXPCWrappedJSClass::CallMethod (
    this=0x7fffce4e5330, wrapper=<value optimized out>, 
    methodIndex=<value optimized out>, info=0x7fffe67f8a90, 
    nativeParams=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1672
#66 0x00007ffff609dee7 in nsXPCWrappedJS::CallMethod (this=0x7fffce4b9500, 
    methodIndex=3717, info=0x7fffe67f8a90, params=0x7fffffff91d0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjs.cpp:588
#67 0x00007ffff69f06a0 in PrepareAndDispatch (self=<value optimized out>, 
    methodIndex=<value optimized out>, args=0x7fffffff9358, 
    gpregs=<value optimized out>, fpregs=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_linux.cpp:153
#68 0x00007ffff69ef9bb in SharedStub () from objdir-ff-debug/dist/bin/libxul.so
#69 0x00007ffff632960b in PK11PasswordPrompt (slot=0x7fffd3c05800, 
    retry=<value optimized out>, arg=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsNSSCallbacks.cpp:838
#70 0x00007fffefc82aa5 in pk11_GetPassword (slot=0x7fffd3c05800, retry=0, 
    wincx=0x7fffce50ae20) at pk11auth.c:535
#71 0x00007fffefc82c62 in PK11_DoPassword (slot=0x7fffd3c05800, loadCerts=1, 
    wincx=0x7fffce50ae20) at pk11auth.c:605
#72 0x00007fffefc82521 in PK11_Authenticate (slot=0x7fffd3c05800, loadCerts=1, 
    wincx=0x7fffce50ae20) at pk11auth.c:334
#73 0x00007ffff6356e00 in nsNSSCertificate::MarkForPermDeletion (
    this=0x7fffe16b09e0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsNSSCertificate.cpp:291
#74 0x00007ffff638072b in nsNSSCertificateDB::DeleteCertificate (
    this=<value optimized out>, aCert=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsNSSCertificateDB.cpp:981
#75 0x00007ffff639b8e6 in nsCertTree::DeleteEntryObject (this=0x7fffde53ad30, 
    index=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:869
#76 0x00007ffff69ef8b2 in NS_InvokeByIndex_P (that=<value optimized out>, 
    methodIndex=<value optimized out>, paramCount=<value optimized out>, 
    params=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:195
---Type <return> to continue, or q <return> to quit---
#77 0x00007ffff60b911a in CallMethodHelper::Invoke (this=0x7fffffff9ce0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:3126
#78 CallMethodHelper::Call (this=0x7fffffff9ce0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2392
#79 0x00007ffff60b4663 in XPCWrappedNative::CallMethod (ccx=..., 
    mode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2356
#80 0x00007ffff60c29a4 in XPC_WN_CallMethod (cx=0x7fffdfaf1c00, argc=1, 
    vp=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1613
#81 0x00007ffff6e9a8a7 in CallJSNative (cx=0x7fffdfaf1c00, 
    entryFrame=<value optimized out>, inlineCallCount=1, 
    interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jscntxtinlines.h:697
#82 js::Interpret (cx=0x7fffdfaf1c00, entryFrame=<value optimized out>, 
    inlineCallCount=1, interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:4726
#83 0x00007ffff6c463bf in js::RunScript (cx=0x7fffdfaf1c00, 
    script=0x7fffdfbc54f0, fp=0x7fffe33fe050)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:649
#84 0x00007ffff6c4a4c9 in js::Invoke (cx=0x7fffdfaf1c00, 
    argsRef=<value optimized out>, flags=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:729
#85 0x00007ffff6c4b587 in js::ExternalInvoke (cx=0x7fffdfaf1c00, 
    thisv=<value optimized out>, fval=..., argc=3620967632, 
    argv=0x7fffd772a020, rval=0x7fffffffab10)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:850
#86 0x00007ffff6ba07e2 in JS_CallFunctionValue (cx=0x7fffdfaf1c00, 
    obj=0x7fffd7d394d0, fval=..., argc=1, argv=0x7fffd772a020, 
    rval=0x7fffffffab10)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsapi.cpp:5166
#87 0x00007ffff5aaa2f8 in nsJSContext::CallEventHandler (this=0x7fffd77f2740, 
    aTarget=<value optimized out>, aScope=<value optimized out>, 
    aHandler=<value optimized out>, aargv=<value optimized out>, 
    arv=0x7fffffffad30)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/dom/base/nsJSEnvironment.cpp:2008
#88 0x00007ffff5b40ae6 in nsJSEventListener::HandleEvent (this=0x7fffde589a00, 
    aEvent=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/dom/src/events/nsJSEventListener.cpp:228
#89 0x00007ffff582e7ed in nsEventListenerManager::HandleEventSubType (
    this=0x7fffdfac95e0, aListenerStruct=0x0, aListener=0x7fffde589a00, 
    aDOMEvent=0x7fffd5768110, aCurrentTarget=0x7fffe0953e00, aPhaseFlags=3959, 
    aPusher=0x7fffffffb2d0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventListenerManager.cpp:1127
#90 0x00007ffff582f492 in nsEventListenerManager::HandleEventInternal (
    this=0x7fffdfac95e0, aPresContext=<value optimized out>, 
    aEvent=0x7fffe2119680, aDOMEvent=<value optimized out>, 
    aCurrentTarget=<value optimized out>, aFlags=<value optimized out>, 
    aEventStatus=0x7fffffffb2b8, aPusher=0x7fffffffb2d0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventListenerManager.cpp:1222
---Type <return> to continue, or q <return> to quit---
#91 0x00007ffff5861382 in nsEventListenerManager::HandleEvent (
    this=<value optimized out>, aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, 
    aMayHaveNewListenerManagers=<value optimized out>, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventListenerManager.h:146
#92 nsEventTargetChainItem::HandleEvent (this=<value optimized out>, 
    aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, 
    aMayHaveNewListenerManagers=<value optimized out>, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:212
#93 nsEventTargetChainItem::HandleEventTargetChain (
    this=<value optimized out>, aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, 
    aMayHaveNewListenerManagers=<value optimized out>, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:341
#94 0x00007ffff5862702 in nsEventDispatcher::Dispatch (
    aTarget=<value optimized out>, aPresContext=0x7fffd7675000, 
    aEvent=0x7fffe2119680, aDOMEvent=<value optimized out>, 
    aEventStatus=<value optimized out>, aCallback=<value optimized out>, 
    aTargets=0x0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:628
#95 0x00007ffff5862cae in nsEventDispatcher::DispatchDOMEvent (
    aTarget=0x7fffe0953e00, aEvent=<value optimized out>, 
    aDOMEvent=0x7fffd5768110, aPresContext=0x7fffd7675000, 
    aEventStatus=0x7fffffffb4d8)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:691
#96 0x00007ffff53d00ab in PresShell::HandleDOMEventWithTarget (
    this=0x7fffe097f400, aTargetContent=0x7fffe0953e00, aEvent=0x7fffd5768110, 
    aStatus=0x7fffffffb4d8)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:7108
#97 0x00007ffff569ba87 in nsContentUtils::DispatchXULCommand (
    aTarget=<value optimized out>, aTrusted=<value optimized out>, 
    aSourceEvent=<value optimized out>, aShell=0x7fffe097f400, 
    aCtrl=<value optimized out>, aAlt=<value optimized out>, aShift=0, aMeta=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsContentUtils.cpp:5482
#98 0x00007ffff561fba4 in nsButtonBoxFrame::DoMouseClick (this=0x7fffce579220, 
    aEvent=0x7fffffffba80, aTrustEvent=1)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/nsButtonBoxFrame.cpp:172
#99 0x00007ffff561f8fb in nsButtonBoxFrame::HandleEvent (this=0x7fffce579220, 
    aPresContext=0x7fffd7675000, aEvent=0x7fffffffba80, 
    aEventStatus=0x7fffffffb828)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/nsButtonBoxFrame.cpp:137
#100 0x00007ffff5861291 in nsEventTargetChainItem::HandleEventTargetChain (
    this=<value optimized out>, aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, aMayHaveNewListenerManagers=-527103208, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEven---Type <return> to continue, or q <return> to quit---
tDispatcher.cpp:386
#101 0x00007ffff5862702 in nsEventDispatcher::Dispatch (
    aTarget=<value optimized out>, aPresContext=0x7fffd7675000, 
    aEvent=0x7fffffffba80, aDOMEvent=<value optimized out>, 
    aEventStatus=<value optimized out>, aCallback=<value optimized out>, 
    aTargets=0x0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:628
#102 0x00007ffff53db090 in PresShell::HandleEventInternal (
    this=0x7fffe097f400, aEvent=0x7fffffffba80, aView=<value optimized out>, 
    aStatus=0x7fffffffc0cc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:7032
#103 0x00007ffff53db907 in PresShell::HandleEventWithTarget (
    this=0x7fffe097f400, aEvent=0x7fffffffba80, aFrame=<value optimized out>, 
    aContent=<value optimized out>, aStatus=0x7fffffffc0cc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6881
#104 0x00007ffff583fa15 in nsEventStateManager::CheckForAndDispatchClick (
    this=0x7fffe1257110, aPresContext=<value optimized out>, 
    aEvent=0x7fffffffc350, aStatus=0x7fffffffc0cc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventStateManager.cpp:4102
#105 0x00007ffff58440fc in nsEventStateManager::PostHandleEvent (
    this=0x7fffe1257110, aPresContext=0x7fffd7675000, aEvent=0x7fffffffc350, 
    aTargetFrame=<value optimized out>, aStatus=0x7fffffffc0cc, 
    aView=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventStateManager.cpp:3002
#106 0x00007ffff53db106 in PresShell::HandleEventInternal (
    this=0x7fffe097f400, aEvent=0x7fffffffc350, aView=<value optimized out>, 
    aStatus=0x7fffffffc0cc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:7055
#107 0x00007ffff53dbb47 in PresShell::HandlePositionedEvent (
    this=0x7fffe097f400, aView=<value optimized out>, 
    aTargetFrame=<value optimized out>, aEvent=0x7fffffffc350, 
    aEventStatus=0x7fffffffc0cc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6866
#108 0x00007ffff53dd0f9 in PresShell::HandleEvent (this=0x7fffe097f400, 
    aView=0x7fffde3e3380, aEvent=0x7fffffffc350, 
    aDontRetargetEvents=<value optimized out>, aEventStatus=0x7fffffffc0cc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6719
#109 0x00007ffff5a8e9ae in nsViewManager::HandleEvent (
    this=<value optimized out>, aView=0x7fffde3e3380, aEvent=0x7fffffffc350)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:1105
#110 0x00007ffff5a910fe in nsViewManager::DispatchEvent (this=0x7fffd7717120, 
    aEvent=0x7fffffffc350, aView=0x684c, aStatus=0x7fffffffc28c)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:1083
#111 0x00007ffff5a8ad55 in HandleEvent (aEvent=0x7fffffffc350)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsView.cpp:161
#112 0x00007ffff65991ef in nsWindow::DispatchEvent (this=0x7fffce622ef0, 
    aEvent=0x7fffffffc350, aStatus=@0x7fffffffc3dc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:564
---Type <return> to continue, or q <return> to quit---
#113 0x00007ffff65a14e2 in nsWindow::OnButtonReleaseEvent (
    this=0x7fffce622ef0, aWidget=<value optimized out>, aEvent=0x7fffde6184e0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:2863
#114 0x00007ffff65a1627 in button_release_event_cb (widget=0x7fffd80e5c00, 
    event=0x7fffde6184e0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:5702
#115 0x00007ffff3954c78 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#116 0x00007ffff1e8147e in g_closure_invoke ()
   from /usr/lib/libgobject-2.0.so.0
#117 0x00007ffff1e973f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#118 0x00007ffff1e988bd in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#119 0x00007ffff1e98fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#120 0x00007ffff3a6af7f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#121 0x00007ffff394d163 in gtk_propagate_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#122 0x00007ffff394e21b in gtk_main_do_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#123 0x00007ffff2cba3cc in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#124 0x00007ffff15c76f2 in g_main_context_dispatch ()
   from /lib/libglib-2.0.so.0
#125 0x00007ffff15cb568 in ?? () from /lib/libglib-2.0.so.0
#126 0x00007ffff15cb71c in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#127 0x00007ffff65d4078 in nsBaseAppShell::DoProcessNextNativeEvent (
    this=0x100000001, mayWait=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:173
#128 0x00007ffff65d44ee in nsBaseAppShell::OnProcessNextEvent (
    this=0x7fffe674ebe0, thr=0x7fffe6710200, mayWait=0, 
    recursionDepth=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:333
#129 0x00007ffff69cd3e1 in nsThread::ProcessNextEvent (this=0x7fffe6710200, 
    mayWait=1, result=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/threads/nsThread.cpp:597
#130 0x00007ffff6950ba4 in NS_ProcessNextEvent_P (thread=0x100000001, 
    mayWait=0) at nsThreadUtils.cpp:250
#131 0x00007ffff6787a10 in mozilla::ipc::MessagePump::Run (
    this=0x7fffe672c080, aDelegate=0x7fffe67226a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/glue/MessagePump.cpp:134
#132 0x00007ffff6a2f976 in MessageLoop::RunInternal (this=0x7fffe67226a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:219
#133 0x00007ffff6a2fa23 in MessageLoop::RunHandler (this=0x100000001)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:202
#134 MessageLoop::Run (this=0x100000001)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:176
#135 0x00007ffff65d4750 in nsBaseAppShell::Run (this=0x7fffe674ebe0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:192
#136 0x00007ffff62be54a in nsAppStartup::Run (this=0x7fffe31386f0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/components/startu---Type <return> to continue, or q <return> to quit---
p/src/nsAppStartup.cpp:220
#137 0x00007ffff508b104 in XRE_main (argc=<value optimized out>, 
    argv=<value optimized out>, aAppData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/xre/nsAppRunner.cpp:3766
#138 0x0000000000401cbc in main (argc=1, argv=0x7fffffffd738)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/browser/app/nsBrowserApp.cpp:158
(gdb) 

(gdb) info locals
No locals.
(gdb) list
980	      nsRefPtr( const nsRefPtr<T>& aSmartPtr )
981	            : mRawPtr(aSmartPtr.mRawPtr)
982	          // copy-constructor
983	        {
984	          if ( mRawPtr )
985	            mRawPtr->AddRef();
986	        }
987	
988	      nsRefPtr( T* aRawPtr )
989	            : mRawPtr(aRawPtr)
(gdb) up
#1  nsCertTree::GetDispInfoAtIndex (this=0x7fffde53ad30, index=0, 
    outAbsoluteCertOffset=0x7ffff69e0e85)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:341
341	      nsRefPtr<nsCertTreeDispInfo> certdi = mDispInfo.ElementAt(certIndex);
(gdb) info locals
certIndex = <value optimized out>
certdi = {mRawPtr = 0x100000001}
i = -151285258
idx = <value optimized out>
cIndex = <value optimized out>
nc = <value optimized out>

(gdb) p certdi.mRawPtr 
$2 = (nsCertTreeDispInfo *) 0x100000001

(gdb) p *certdi.mRawPtr 
Cannot access memory at address 0x100000001
Comment 14 timeless 2011-02-15 02:43:59 PST
ok, definitely an unhappy pointer value.

481 nsCertTree::GetCertsByTypeFromCertList(CERTCertList *aCertList,
482                                        PRUint32 aWantedType,
483                                        nsCertCompareFunc  aCertCmpFn,
484                                        void *aCertCmpFnArg)

i'd try setting a breakpoint here:
638         mDispInfo.InsertElementAt(InsertPosition, certdi);

and look at certdi (or use some printfs to have it spit out all the values).
Comment 15 Ludovic Rousseau 2011-02-15 05:38:41 PST
nsCertTree::GetCertsByTypeFromCertList() is called a huge number of times.
I added line
		printf("%s:%d %p\n", __FILE__, __LINE__, certdi);
and I get:

WARNING: dependent window created without a parent: file /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/components/startup/src/nsAppStartup.cpp, line 501
++DOCSHELL 0x7fffdf735000 == 9
++DOMWINDOW == 18 (0x7fffdf735878) [serial = 21] [outer = (nil)]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
++DOMWINDOW == 19 (0x7fffdf736878) [serial = 22] [outer = 0x7fffdf735800]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
WARNING: NS_ENSURE_TRUE(sf) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp, line 4992
WARNING: NS_ENSURE_TRUE(sf) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp, line 4992
[New Thread 0x7fffcd8ff700 (LWP 11724)]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
WARNING: NS_ENSURE_SUCCESS(rv, 0) failed with result 0x8000FFFF: file /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsContentUtils.cpp, line 2904
WARNING: NS_ENSURE_TRUE(pusher.Push(aBoundElement)) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/content/xbl/src/nsXBLProtoImplMethod.cpp, line 327
WARNING: NS_ENSURE_SUCCESS(rv, 0) failed with result 0x8000FFFF: file /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsContentUtils.cpp, line 2904
WARNING: NS_ENSURE_TRUE(pusher.Push(aBoundElement)) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/content/xbl/src/nsXBLProtoImplMethod.cpp, line 327
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffce5c8740
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffce9f9920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89380
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89560
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec895b0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89650
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec896a0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89790
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89830
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89600
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec898d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89bf0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89c90
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89ce0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89dd0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcec89fb0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4420
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca44c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4560
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca49c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4a60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4ab0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4b00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4b50
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4d80
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceca4f10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4600
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4830
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4ab0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4c40
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4c90
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4d30
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecb4e20
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffceccbb00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecd6060
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffcecd6100
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a420
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a470
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a4c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a790
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd274a9c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd0b0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd100
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd150
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd1f0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd240
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd290
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd2e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd330
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd600
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd6f0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd740
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd790
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd7e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd41bd880
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580100
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55802e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580330
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580560
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55805b0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55807e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580830
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580880
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55809c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580a10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580a60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5580b00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5586920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5586970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55942e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5594470
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55944c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5594510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55945b0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd55948d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5594b00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd5594ba0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd773cec0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd773cf10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd773cf60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd78181f0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818240
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd78182e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818330
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818380
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd78183d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818420
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818650
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818d30
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818d80
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818dd0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7818e20
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789c100
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789c1f0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789c290
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789c380
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789cba0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789cbf0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd789cc40
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e150
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e1f0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e240
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e290
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e2e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e330
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e420
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e470
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797e560
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797eba0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797ec40
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd797ec90
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798b830
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798ba10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798ba60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bbf0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bc90
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bd80
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bdd0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798be20
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bec0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bf10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd798bfb0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63060
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63100
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63150
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63240
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63420
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63ce0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e63f60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e7d6f0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e7d740
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e7d790
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7e7d7e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd7f640b0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8043a60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8043ab0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8043ba0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8043bf0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd80846a0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8084920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8084b00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8084b50
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8084ba0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd8084d80
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd81e7510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd81e7560
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd81e77e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd81e7920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffd81e7970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbe1cf10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbe1cf60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbe1cfb0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbed0240
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbed0330
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbed0420
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbed0560
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbed08d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdbed09c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc07afb0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc0f4a60
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc0f4c40
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc11fdd0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc11fe70
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc29d510
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc29d7e0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc2df060
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc2df0b0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc2df100
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc2df150
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc3399c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffdc37c920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde214060
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde214600
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde2148d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde214920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde214970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde2149c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde214a10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde214b00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38d740
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38d8d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38d920
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38d970
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38d9c0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38da10
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38dab0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38db00
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38dbf0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38de20
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38de70
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde38dec0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffce9f9830
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde3fd3d0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde3fd600
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde3fd6a0
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:638 0x7fffde3fd6f0
++DOCSHELL 0x7fffdf738400 == 10
++DOMWINDOW == 20 (0x7fffdffdc478) [serial = 23] [outer = (nil)]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
++DOMWINDOW == 21 (0x7fffe0715478) [serial = 24] [outer = 0x7fffdffdc400]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
WARNING: NS_ENSURE_TRUE(sf) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp, line 4992
WARNING: NS_ENSURE_TRUE(sf) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp, line 4992
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
WARNING: dependent window created without a parent: file /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/components/startup/src/nsAppStartup.cpp, line 501
++DOCSHELL 0x7fffe0715800 == 11
++DOMWINDOW == 22 (0x7fffe0717078) [serial = 25] [outer = (nil)]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
++DOMWINDOW == 23 (0x7fffe1524c78) [serial = 26] [outer = 0x7fffe0717000]
WARNING: Subdocument container has no content: file /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp, line 2388
WARNING: NS_ENSURE_TRUE(sf) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp, line 4992
WARNING: NS_ENSURE_TRUE(sf) failed: file /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp, line 4992
###!!! ASSERTION: invalid array index: 'i < Length()', file ../../../../dist/include/nsTArray.h, line 455

Program received signal SIGSEGV, Segmentation fault.
nsRefPtr (this=0x7fffcea0b8f0, index=0, outAbsoluteCertOffset=0x7ffff69e0ea5)
    at ../../../../dist/include/nsAutoPtr.h:985
985	            mRawPtr->AddRef();

What else can I do?
Comment 16 timeless 2011-02-15 05:44:14 PST
###!!! ASSERTION: invalid array index: 'i < Length()', file
../../../../dist/include/nsTArray.h, line 455

looks interesting. let's stop there.

https://developer.mozilla.org/en/XPCOM_DEBUG_BREAK

try XPCOM_DEBUG_BREAK=break

and get a stack trace for that assertion.
Comment 17 Ludovic Rousseau 2011-02-15 06:17:56 PST
###!!! ASSERTION: invalid array index: 'i < Length()', file ../../../../dist/include/nsTArray.h, line 455

Program received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffff69e0f31 in RealBreak (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff6fb6260 "i < Length()", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:409
409	   asm("int $3");
(gdb) bt
#0  0x00007ffff69e0f31 in RealBreak (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff6fb6260 "i < Length()", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:409
#1  Break (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff6fb6260 "i < Length()", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:517
#2  NS_DebugBreak_P (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff6fb6260 "i < Length()", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:385
#3  0x00007ffff63973c9 in nsTArray<nsRefPtr<nsCertTreeDispInfo>, nsTArrayDefaultAllocator>::ElementAt (this=0x7fffd3867040, index=<value optimized out>, 
    outAbsoluteCertOffset=<value optimized out>)
    at ../../../../dist/include/nsTArray.h:455
#4  nsCertTree::GetDispInfoAtIndex (this=0x7fffd3867040, 
    index=<value optimized out>, outAbsoluteCertOffset=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:341
#5  0x00007ffff6398a29 in nsCertTree::GetCellText (this=0x7fffd3867040, row=1, 
    col=0x7fffcdff67a0, _retval=...)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:1143
#6  0x00007ffff5d76244 in nsTreeBodyFrame::PaintText (this=0x7fffcdfebc78, 
    aRowIndex=<value optimized out>, aColumn=0x7fffcdff67a0, aTextRect=..., 
    aPresContext=<value optimized out>, aRenderingContext=..., aDirtyRect=..., 
    aCurrX=@0x7fffffff424c, aTextRTL=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3548
#7  0x00007ffff5d8505c in nsTreeBodyFrame::PaintCell (this=0x7fffcdfebc78, 
    aRowIndex=<value optimized out>, aColumn=0x7fffcdff67a0, 
    aCellRect=<value optimized out>, aPresContext=<value optimized out>, 
    aRenderingContext=<value optimized out>, aDirtyRect=..., 
    aCurrX=@0x7fffffff43e0, aPt=...)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3291
#8  0x00007ffff5d860a9 in nsTreeBodyFrame::PaintRow (this=0x7fffcdfebc78, 
    aRowIndex=1, aRowRect=<value optimized out>, 
    aPresContext=<value optimized out>, 
    aRenderingContext=<value optimized out>, aDirtyRect=<value optimized out>, 
    aPt=...)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:3066
#9  0x00007ffff5d869c4 in nsTreeBodyFrame::PaintTreeBody (this=0x7fffcdfebc78, 
    aRenderingContext=<value optimized out>, aDirtyRect=<value optimized out>, 
    aPt=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:2869
#10 0x00007ffff5d86cd8 in PaintTreeBody (aFrame=0x7ffff71b3355, 
    aCtx=0x7fffffffe4ef, aDirtyRect=..., aPt=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBodyFrame.cpp:2794
#11 0x00007ffff53ff801 in nsDisplayGeneric::Paint (this=0x7fffce5079f8, 
    aBuilder=<value optimized out>, aCtx=0x7fffde9a5f40)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/forms/../base/nsDi---Type <return> to continue, or q <return> to quit---
splayList.h:1257
#12 0x00007ffff532c3e7 in mozilla::FrameLayerBuilder::DrawThebesLayer (
    aLayer=<value optimized out>, aContext=<value optimized out>, 
    aRegionToDraw=<value optimized out>, 
    aRegionToInvalidate=<value optimized out>, 
    aCallbackData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/FrameLayerBuilder.cpp:1853
#13 0x00007ffff6af318f in mozilla::layers::BasicThebesLayer::PaintBuffer (
    this=0x7fffce4ac800, aContext=0x7fffffffe4ef, aRegionToDraw=..., 
    aRegionToInvalidate=..., aCallback=0x7fffffffe4e9, aCallbackData=0x3042)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:425
#14 mozilla::layers::BasicShadowableThebesLayer::PaintBuffer (
    this=0x7fffce4ac800, aContext=0x7fffffffe4ef, aRegionToDraw=..., 
    aRegionToInvalidate=..., aCallback=0x7fffffffe4e9, aCallbackData=0x3042)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1766
#15 0x00007ffff6af4c60 in mozilla::layers::BasicThebesLayer::Paint (
    this=0x7fffce4ac800, aContext=0x7fffde77d100, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:576
#16 0x00007ffff6af38ef in mozilla::layers::BasicLayerManager::PaintLayer (
    this=0x7fffce4796a0, aLayer=0x7fffce4ac800, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0x7fffffff5110)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1431
#17 0x00007ffff6af3512 in mozilla::layers::BasicLayerManager::PaintLayer (
    this=0x7fffce4796a0, aLayer=<value optimized out>, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0x7fffffff5110)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1435
#18 0x00007ffff6af432e in mozilla::layers::BasicLayerManager::EndTransactionInternal (this=0x7fffce4796a0, 
    aCallback=0x7ffff532b9c0 <mozilla::FrameLayerBuilder::DrawThebesLayer(mozilla::layers::ThebesLayer*, gfxContext*, nsIntRegion const&, nsIntRegion const&, void*)>, aCallbackData=0x7fffffff5110)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:1298
#19 0x00007ffff6af4a19 in mozilla::layers::BasicShadowLayerManager::EndTransaction (this=0x7ffff71b3355, aCallback=0x7fffffffe4ef, 
    aCallbackData=0x7fffebd0d060)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/gfx/layers/basic/BasicLayers.cpp:2698
#20 0x00007ffff5379b71 in nsDisplayList::PaintForFrame (this=0x7fffce4796a0, 
    aBuilder=0x7fffffff5110, aCtx=<value optimized out>, aForFrame=0x3f800000, 
    aFlags=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDisplayList.cpp:540
#21 0x00007ffff53a5102 in nsLayoutUtils::PaintFrame (
    aRenderingContext=<value optimized out>, aFrame=0x7fffffff5630, 
    aDirtyRegion=<value optimized out>, aBackstop=<value optimized out>, 
---Type <return> to continue, or q <return> to quit---
    aFlags=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsLayoutUtils.cpp:1557
#22 0x00007ffff53cee96 in PresShell::Paint (this=0x7fffcdf72800, 
    aDisplayRoot=0x7fffcdf1ce80, aViewToPaint=<value optimized out>, 
    aWidgetToPaint=0x7fffd7d5f5f0, aDirtyRegion=<value optimized out>, 
    aIntDirtyRegion=<value optimized out>, aPaintDefaultBackground=0, 
    aWillSendDidPaint=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6188
#23 0x00007ffff5a8e3bc in nsViewManager::RenderViews (this=0x7fffce1e0c10, 
    aView=0x7fffcdf1ce80, aWidget=0x2c682e7961727241, 
    aRegion=<value optimized out>, aIntRegion=..., aPaintDefaultBackground=0, 
    aWillSendDidPaint=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:458
#24 0x00007ffff5a8e790 in nsViewManager::Refresh (this=0x7fffce1e0c10, 
    aView=0x7fffcdf1ce80, aWidget=0x7fffd7d5f5f0, aRegion=..., aUpdateFlags=1)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:424
#25 0x00007ffff5a91d2b in nsViewManager::DispatchEvent (this=0x7fffce1e0c10, 
    aEvent=0x7fffffff5ca0, aView=<value optimized out>, 
    aStatus=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:925
#26 0x00007ffff5a8ad55 in HandleEvent (aEvent=0x7fffffff5ca0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsView.cpp:161
#27 0x00007ffff659920f in nsWindow::DispatchEvent (this=0x7fffd7d5f5f0, 
    aEvent=0x7fffffff5ca0, aStatus=@0x7fffffff5e94)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:564
#28 0x00007ffff65a0ed7 in nsWindow::OnExposeEvent (this=0x7fffd7d5f5f0, 
    aWidget=<value optimized out>, aEvent=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:2251
#29 0x00007ffff65a1301 in expose_event_cb (widget=0x7fffcdf1bd00, 
    event=0x7fffffff63c0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:5549
#30 0x00007ffff3954c78 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#31 0x00007ffff1e8147e in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
#32 0x00007ffff1e973f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#33 0x00007ffff1e988bd in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#34 0x00007ffff1e98fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#35 0x00007ffff3a6af7f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#36 0x00007ffff394e3a1 in gtk_main_do_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#37 0x00007ffff2ca17b2 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#38 0x00007ffff2c9e26b in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#39 0x00007ffff2ca00e1 in gdk_window_process_all_updates ()
   from /usr/lib/libgdk-x11-2.0.so.0
#40 0x00007ffff2ca0149 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#41 0x00007ffff2c7cd26 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#42 0x00007ffff15c76f2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#43 0x00007ffff15cb568 in ?? () from /lib/libglib-2.0.so.0
#44 0x00007ffff15cb71c in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#45 0x00007ffff65d4098 in nsBaseAppShell::DoProcessNextNativeEvent (
---Type <return> to continue, or q <return> to quit---
    this=0x7ffff71b3355, mayWait=-6929)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:173
#46 0x00007ffff65d450e in nsBaseAppShell::OnProcessNextEvent (
    this=0x7fffe674ebe0, thr=0x7fffe6710200, mayWait=1, 
    recursionDepth=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:333
#47 0x00007ffff69cd401 in nsThread::ProcessNextEvent (this=0x7fffe6710200, 
    mayWait=1, result=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/threads/nsThread.cpp:597
#48 0x00007ffff6950bc4 in NS_ProcessNextEvent_P (thread=0x7ffff71b3355, 
    mayWait=-6929) at nsThreadUtils.cpp:250
#49 0x00007ffff629a4a3 in nsXULWindow::ShowModal (this=0x7fffcf03c900)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpfe/appshell/src/nsXULWindow.cpp:419
#50 0x00007ffff623417b in nsWindowWatcher::OpenWindowJSInternal (
    this=<value optimized out>, aParent=0x0, aUrl=<value optimized out>, 
    aName=<value optimized out>, aFeatures=<value optimized out>, 
    aDialog=<value optimized out>, argv=0x7fffce454c10, aCalledFromJS=0, 
    _retval=0x7fffffff7538)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/embedding/components/windowwatcher/src/nsWindowWatcher.cpp:1026
#51 0x00007ffff62358ee in nsWindowWatcher::OpenWindow (
    this=<value optimized out>, aParent=0x0, 
    aUrl=0x7fffce454bb0 "chrome://global/content/commonDialog.xul", 
    aName=0x7fffce40f4b0 "_blank", 
    aFeatures=0x7fffce454be0 "centerscreen,chrome,modal,titlebar", 
    aArguments=0x7fffce445ce0, _retval=0x7fffffff7538)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/embedding/components/windowwatcher/src/nsWindowWatcher.cpp:423
#52 0x00007ffff69ef8d2 in NS_InvokeByIndex_P (that=<value optimized out>, 
    methodIndex=<value optimized out>, paramCount=<value optimized out>, 
    params=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:195
#53 0x00007ffff60b911a in CallMethodHelper::Invoke (this=0x7fffffff7480)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:3126
#54 CallMethodHelper::Call (this=0x7fffffff7480)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2392
#55 0x00007ffff60b4663 in XPCWrappedNative::CallMethod (ccx=..., 
    mode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2356
#56 0x00007ffff60c29a4 in XPC_WN_CallMethod (cx=0x7fffcdf0fc00, argc=5, 
    vp=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1613
#57 0x00007ffff6e9a8c7 in CallJSNative (cx=0x7fffcdf0fc00, 
    entryFrame=<value optimized out>, inlineCallCount=2, 
    interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jscntxtinlines.h:697
#58 js::Interpret (cx=0x7fffcdf0fc00, entryFrame=<value optimized out>, 
    inlineCallCount=2, interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:4726
---Type <return> to continue, or q <return> to quit---
#59 0x00007ffff6c463df in js::RunScript (cx=0x7fffcdf0fc00, 
    script=0x7fffce58bc50, fp=0x7fffe33fe270)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:649
#60 0x00007ffff6c4a4e9 in js::Invoke (cx=0x7fffcdf0fc00, 
    argsRef=<value optimized out>, flags=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:729
#61 0x00007ffff6c281af in js_fun_apply (cx=0x7fffcdf0fc00, 
    argc=<value optimized out>, vp=0x7fffe33fe218)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsfun.cpp:2195
#62 0x00007ffff6e9a8c7 in CallJSNative (cx=0x7fffcdf0fc00, 
    entryFrame=<value optimized out>, inlineCallCount=0, 
    interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jscntxtinlines.h:697
#63 js::Interpret (cx=0x7fffcdf0fc00, entryFrame=<value optimized out>, 
    inlineCallCount=0, interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:4726
#64 0x00007ffff6c463df in js::RunScript (cx=0x7fffcdf0fc00, 
    script=0x7fffce689e40, fp=0x7fffe33fe1c0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:649
#65 0x00007ffff6c4a4e9 in js::Invoke (cx=0x7fffcdf0fc00, 
    argsRef=<value optimized out>, flags=8192)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:729
#66 0x00007ffff6c4b5a7 in js::ExternalInvoke (cx=0x7fffcdf0fc00, 
    thisv=<value optimized out>, fval=..., argc=3575296624, 
    argv=0x7fffffff8ec8, rval=0x7fffffff9040)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:850
#67 0x00007ffff6ba0802 in JS_CallFunctionValue (cx=0x7fffcdf0fc00, 
    obj=0x7fffd51ab270, fval=..., argc=5, argv=0x7fffffff8ec8, 
    rval=0x7fffffff9040)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsapi.cpp:5166
#68 0x00007ffff60a79d7 in nsXPCWrappedJSClass::CallMethod (
    this=0x7fffce445a60, wrapper=<value optimized out>, 
    methodIndex=<value optimized out>, info=0x7fffe67f8a90, 
    nativeParams=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1672
#69 0x00007ffff609dee7 in nsXPCWrappedJS::CallMethod (this=0x7fffd5259000, 
    methodIndex=53344, info=0x7fffe67f8a90, params=0x7fffffff91b0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjs.cpp:588
#70 0x00007ffff69f06c0 in PrepareAndDispatch (self=<value optimized out>, 
    methodIndex=<value optimized out>, args=0x7fffffff9338, 
    gpregs=<value optimized out>, fpregs=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_linux.cpp:153
#71 0x00007ffff69ef9db in SharedStub () from objdir-ff-debug/dist/bin/libxul.so
#72 0x00007ffff632960b in PK11PasswordPrompt (slot=0x7fffd382b400, 
    retry=<value optimized out>, arg=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsNSSCallbacks.cpp:838
#73 0x00007fffefc82aa5 in pk11_GetPassword (slot=0x7fffd382b400, retry=0, 
    wincx=0x7fffce6e40e0) at pk11auth.c:535
#74 0x00007fffefc82c62 in PK11_DoPassword (slot=0x7fffd382b400, loadCerts=1, 
    wincx=0x7fffce6e40e0) at pk11auth.c:605
#75 0x00007fffefc82521 in PK11_Authenticate (slot=0x7fffd382b400, loadCerts=1, 
    wincx=0x7fffce6e40e0) at pk11auth.c:334
#76 0x00007ffff6356e00 in nsNSSCertificate::MarkForPermDeletion (
    this=0x7fffd80bd0e0)
---Type <return> to continue, or q <return> to quit---
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsNSSCertificate.cpp:291
#77 0x00007ffff638072b in nsNSSCertificateDB::DeleteCertificate (
    this=<value optimized out>, aCert=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsNSSCertificateDB.cpp:981
#78 0x00007ffff639b906 in nsCertTree::DeleteEntryObject (this=0x7fffd3867040, 
    index=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:870
#79 0x00007ffff69ef8d2 in NS_InvokeByIndex_P (that=<value optimized out>, 
    methodIndex=<value optimized out>, paramCount=<value optimized out>, 
    params=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_x86_64_unix.cpp:195
#80 0x00007ffff60b911a in CallMethodHelper::Invoke (this=0x7fffffff9cc0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:3126
#81 CallMethodHelper::Call (this=0x7fffffff9cc0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2392
#82 0x00007ffff60b4663 in XPCWrappedNative::CallMethod (ccx=..., 
    mode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednative.cpp:2356
#83 0x00007ffff60c29a4 in XPC_WN_CallMethod (cx=0x7fffcdf0fc00, argc=1, 
    vp=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1613
#84 0x00007ffff6e9a8c7 in CallJSNative (cx=0x7fffcdf0fc00, 
    entryFrame=<value optimized out>, inlineCallCount=1, 
    interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jscntxtinlines.h:697
#85 js::Interpret (cx=0x7fffcdf0fc00, entryFrame=<value optimized out>, 
    inlineCallCount=1, interpMode=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:4726
#86 0x00007ffff6c463df in js::RunScript (cx=0x7fffcdf0fc00, 
    script=0x7fffd78f53d0, fp=0x7fffe33fe050)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:649
#87 0x00007ffff6c4a4e9 in js::Invoke (cx=0x7fffcdf0fc00, 
    argsRef=<value optimized out>, flags=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:729
#88 0x00007ffff6c4b5a7 in js::ExternalInvoke (cx=0x7fffcdf0fc00, 
    thisv=<value optimized out>, fval=..., argc=3459746120, 
    argv=0x7fffd520e020, rval=0x7fffffffaaf0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsinterp.cpp:850
#89 0x00007ffff6ba0802 in JS_CallFunctionValue (cx=0x7fffcdf0fc00, 
    obj=0x7fffce378948, fval=..., argc=1, argv=0x7fffd520e020, 
    rval=0x7fffffffaaf0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/jsapi.cpp:5166
#90 0x00007ffff5aaa2f8 in nsJSContext::CallEventHandler (this=0x7fffcdf1acf0, 
    aTarget=<value optimized out>, aScope=<value optimized out>, 
    aHandler=<value optimized out>, aargv=<value optimized out>, 
    arv=0x7fffffffad10)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/dom/base/nsJSEnvironment.cpp:2008
#91 0x00007ffff5b40ae6 in nsJSEventListener::HandleEvent (this=0x7fffcdf7e4c0, 
    aEvent=<value optimized out>)
---Type <return> to continue, or q <return> to quit---
    at /home/NoBackup/Debian/iceweasel/mozilla-central/dom/src/events/nsJSEventListener.cpp:228
#92 0x00007ffff582e7ed in nsEventListenerManager::HandleEventSubType (
    this=0x7fffcdf4f7f0, aListenerStruct=0x0, aListener=0x7fffcdf7e4c0, 
    aDOMEvent=0x7fffcdfcbab0, aCurrentTarget=0x7fffcdf79980, 
    aPhaseFlags=12354, aPusher=0x7fffffffb2b0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventListenerManager.cpp:1127
#93 0x00007ffff582f492 in nsEventListenerManager::HandleEventInternal (
    this=0x7fffcdf4f7f0, aPresContext=<value optimized out>, 
    aEvent=0x7fffcdff6d40, aDOMEvent=<value optimized out>, 
    aCurrentTarget=<value optimized out>, aFlags=<value optimized out>, 
    aEventStatus=0x7fffffffb298, aPusher=0x7fffffffb2b0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventListenerManager.cpp:1222
#94 0x00007ffff5861382 in nsEventListenerManager::HandleEvent (
    this=<value optimized out>, aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, 
    aMayHaveNewListenerManagers=<value optimized out>, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventListenerManager.h:146
#95 nsEventTargetChainItem::HandleEvent (this=<value optimized out>, 
    aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, 
    aMayHaveNewListenerManagers=<value optimized out>, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:212
#96 nsEventTargetChainItem::HandleEventTargetChain (
    this=<value optimized out>, aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, 
    aMayHaveNewListenerManagers=<value optimized out>, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:341
#97 0x00007ffff5862702 in nsEventDispatcher::Dispatch (
    aTarget=<value optimized out>, aPresContext=0x7fffcdf23800, 
    aEvent=0x7fffcdff6d40, aDOMEvent=<value optimized out>, 
    aEventStatus=<value optimized out>, aCallback=<value optimized out>, 
    aTargets=0x0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:628
#98 0x00007ffff5862cae in nsEventDispatcher::DispatchDOMEvent (
    aTarget=0x7fffcdf79980, aEvent=<value optimized out>, 
    aDOMEvent=0x7fffcdfcbab0, aPresContext=0x7fffcdf23800, 
    aEventStatus=0x7fffffffb4b8)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:691
#99 0x00007ffff53d00ab in PresShell::HandleDOMEventWithTarget (
    this=0x7fffcdf72800, aTargetContent=0x7fffcdf79980, aEvent=0x7fffcdfcbab0, 
    aStatus=0x7fffffffb4b8)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:7108
#100 0x00007ffff569ba87 in nsContentUtils::DispatchXULCommand (
    aTarget=<value optimized out>, aTrusted=<value optimized out>, 
    aSourceEvent=<value optimized out>, aShell=0x7fffcdf72800, 
    aCtrl=<value optimized out>, aAlt=<value optimized out>, aShift=0, aMeta=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsConten---Type <return> to continue, or q <return> to quit---
tUtils.cpp:5482
#101 0x00007ffff561fba4 in nsButtonBoxFrame::DoMouseClick (
    this=0x7fffce402220, aEvent=0x7fffffffba60, aTrustEvent=1)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/nsButtonBoxFrame.cpp:172
#102 0x00007ffff561f8fb in nsButtonBoxFrame::HandleEvent (this=0x7fffce402220, 
    aPresContext=0x7fffcdf23800, aEvent=0x7fffffffba60, 
    aEventStatus=0x7fffffffb808)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/nsButtonBoxFrame.cpp:137
#103 0x00007ffff5861291 in nsEventTargetChainItem::HandleEventTargetChain (
    this=<value optimized out>, aVisitor=..., aFlags=<value optimized out>, 
    aCallback=<value optimized out>, aMayHaveNewListenerManagers=-806807320, 
    aPusher=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:386
#104 0x00007ffff5862702 in nsEventDispatcher::Dispatch (
    aTarget=<value optimized out>, aPresContext=0x7fffcdf23800, 
    aEvent=0x7fffffffba60, aDOMEvent=<value optimized out>, 
    aEventStatus=<value optimized out>, aCallback=<value optimized out>, 
    aTargets=0x0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventDispatcher.cpp:628
#105 0x00007ffff53db090 in PresShell::HandleEventInternal (
    this=0x7fffcdf72800, aEvent=0x7fffffffba60, aView=<value optimized out>, 
    aStatus=0x7fffffffc0ac)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:7032
#106 0x00007ffff53db907 in PresShell::HandleEventWithTarget (
    this=0x7fffcdf72800, aEvent=0x7fffffffba60, aFrame=<value optimized out>, 
    aContent=<value optimized out>, aStatus=0x7fffffffc0ac)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6881
#107 0x00007ffff583fa15 in nsEventStateManager::CheckForAndDispatchClick (
    this=0x7fffce673c60, aPresContext=<value optimized out>, 
    aEvent=0x7fffffffc330, aStatus=0x7fffffffc0ac)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventStateManager.cpp:4102
#108 0x00007ffff58440fc in nsEventStateManager::PostHandleEvent (
    this=0x7fffce673c60, aPresContext=0x7fffcdf23800, aEvent=0x7fffffffc330, 
    aTargetFrame=<value optimized out>, aStatus=0x7fffffffc0ac, 
    aView=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/events/src/nsEventStateManager.cpp:3002
#109 0x00007ffff53db106 in PresShell::HandleEventInternal (
    this=0x7fffcdf72800, aEvent=0x7fffffffc330, aView=<value optimized out>, 
    aStatus=0x7fffffffc0ac)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:7055
#110 0x00007ffff53dbb47 in PresShell::HandlePositionedEvent (
    this=0x7fffcdf72800, aView=<value optimized out>, 
    aTargetFrame=<value optimized out>, aEvent=0x7fffffffc330, 
    aEventStatus=0x7fffffffc0ac)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:6866
#111 0x00007ffff53dd0f9 in PresShell::HandleEvent (this=0x7fffcdf72800, 
    aView=0x7fffcdf1ce80, aEvent=0x7fffffffc330, 
    aDontRetargetEvents=<value optimized out>, aEventStatus=0x7fffffffc0ac)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.c---Type <return> to continue, or q <return> to quit---
pp:6719
#112 0x00007ffff5a8e9ae in nsViewManager::HandleEvent (
    this=<value optimized out>, aView=0x7fffcdf1ce80, aEvent=0x7fffffffc330)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:1105
#113 0x00007ffff5a910fe in nsViewManager::DispatchEvent (this=0x7fffce1e0c10, 
    aEvent=0x7fffffffc330, aView=0x6e28, aStatus=0x7fffffffc26c)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsViewManager.cpp:1083
#114 0x00007ffff5a8ad55 in HandleEvent (aEvent=0x7fffffffc330)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/view/src/nsView.cpp:161
#115 0x00007ffff659920f in nsWindow::DispatchEvent (this=0x7fffd7d5f5f0, 
    aEvent=0x7fffffffc330, aStatus=@0x7fffffffc3bc)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:564
#116 0x00007ffff65a1502 in nsWindow::OnButtonReleaseEvent (
    this=0x7fffd7d5f5f0, aWidget=<value optimized out>, aEvent=0x7fffce4e20b0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:2863
#117 0x00007ffff65a1647 in button_release_event_cb (widget=0x7fffcdf1bd00, 
    event=0x7fffce4e20b0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/gtk2/nsWindow.cpp:5702
#118 0x00007ffff3954c78 in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#119 0x00007ffff1e8147e in g_closure_invoke ()
   from /usr/lib/libgobject-2.0.so.0
#120 0x00007ffff1e973f7 in ?? () from /usr/lib/libgobject-2.0.so.0
#121 0x00007ffff1e988bd in g_signal_emit_valist ()
   from /usr/lib/libgobject-2.0.so.0
#122 0x00007ffff1e98fc3 in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
#123 0x00007ffff3a6af7f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#124 0x00007ffff394d163 in gtk_propagate_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#125 0x00007ffff394e21b in gtk_main_do_event ()
   from /usr/lib/libgtk-x11-2.0.so.0
#126 0x00007ffff2cba3cc in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#127 0x00007ffff15c76f2 in g_main_context_dispatch ()
   from /lib/libglib-2.0.so.0
#128 0x00007ffff15cb568 in ?? () from /lib/libglib-2.0.so.0
#129 0x00007ffff15cb71c in g_main_context_iteration ()
   from /lib/libglib-2.0.so.0
#130 0x00007ffff65d4098 in nsBaseAppShell::DoProcessNextNativeEvent (
    this=0x7ffff71b3355, mayWait=-6929)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:173
#131 0x00007ffff65d450e in nsBaseAppShell::OnProcessNextEvent (
    this=0x7fffe674ebe0, thr=0x7fffe6710200, mayWait=0, 
    recursionDepth=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:333
#132 0x00007ffff69cd401 in nsThread::ProcessNextEvent (this=0x7fffe6710200, 
    mayWait=1, result=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/threads/nsThread.cpp:597
#133 0x00007ffff6950bc4 in NS_ProcessNextEvent_P (thread=0x7ffff71b3355, 
    mayWait=-6929) at nsThreadUtils.cpp:250
#134 0x00007ffff6787a30 in mozilla::ipc::MessagePump::Run (
    this=0x7fffe672c080, aDelegate=0x7fffe67226a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/glue/MessagePump.cpp:---Type <return> to continue, or q <return> to quit---
134
#135 0x00007ffff6a2f996 in MessageLoop::RunInternal (this=0x7fffe67226a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:219
#136 0x00007ffff6a2fa43 in MessageLoop::RunHandler (this=0x7ffff71b3355)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:202
#137 MessageLoop::Run (this=0x7ffff71b3355)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:176
#138 0x00007ffff65d4770 in nsBaseAppShell::Run (this=0x7fffe674ebe0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:192
#139 0x00007ffff62be54a in nsAppStartup::Run (this=0x7fffe31396f0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/components/startup/src/nsAppStartup.cpp:220
#140 0x00007ffff508b104 in XRE_main (argc=<value optimized out>, 
    argv=<value optimized out>, aAppData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/xre/nsAppRunner.cpp:3766
#141 0x0000000000401cbc in main (argc=1, argv=0x7fffffffd718)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/browser/app/nsBrowserApp.cpp:158
(gdb)
Comment 18 timeless 2011-02-15 13:31:23 PST
ok, that's it. thanks.
Comment 19 timeless 2011-02-15 14:03:26 PST
Created attachment 512592 [details] [diff] [review]
untested proposal

ludovic: please try applying this patch and rebuilding. i believe it should make your crash go away.

if it does, please edit this attachment and change 'feedback' '?' to 'feedback' '+', if it doesn't, change it to '-' and include the build failure or stack trace to the assertion/crash.
Comment 20 Ludovic Rousseau 2011-02-17 01:52:47 PST
Your patch does not compile:

/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp: In member function ‘PRInt32 nsCertTree::CountOrganizations()’:
/home/NoBackup/Debian/iceweasel/mozilla-central/security/manager/ssl/src/nsCertTree.cpp:271: erreur: no matching function for call to ‘nsTArray<nsRefPtr<nsCertTreeDispInfo>, nsTArrayDefaultAllocator>::SafeElementAt(PRUint32&)’
../../../../dist/include/nsTArray.h:473: note: candidats sont: E& nsTArray<E, Alloc>::SafeElementAt(typename nsTArray_base<Alloc>::index_type, E&) [with E = nsRefPtr<nsCertTreeDispInfo>, Alloc = nsTArrayDefaultAllocator]
../../../../dist/include/nsTArray.h:482: note:                 const E& nsTArray<E, Alloc>::SafeElementAt(typename nsTArray_base<Alloc>::index_type, const E&) const [with E = nsRefPtr<nsCertTreeDispInfo>, Alloc = nsTArrayDefaultAllocator]

You do not use SafeElementAt() the correct way.

I tried using SafeElementAt(i, NULL) instead but I get a crash before I can reproduce _my_ bug

###!!! ASSERTION: XPConnect is being called on a scope without a 'Components' property!  (stack and details follow): 'Error', file /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativescope.cpp, line 761

Program received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffff69d93e1 in RealBreak (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff726ac55 "Error", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:409
409	   asm("int $3");
(gdb) bt
#0  0x00007ffff69d93e1 in RealBreak (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff726ac55 "Error", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:409
#1  Break (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff726ac55 "Error", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:517
#2  NS_DebugBreak_P (aSeverity=1, aStr=<value optimized out>, 
    aExpr=0x7ffff726ac55 "Error", aFile=<value optimized out>, 
    aLine=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/base/nsDebugImpl.cpp:385
#3  0x00007ffff60bb1ab in DEBUG_CheckForComponentsInScope (cx=0x7fffdf035c00, 
    obj=<value optimized out>, startingObj=0x7fffd4f27a28, 
    OKIfNotInitialized=<value optimized out>, runtime=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativescope.cpp:761
#4  0x00007ffff60bb54d in XPCWrappedNativeScope::FindInJSObjectScope (
    cx=0x7fffdf035c00, obj=0x7fffd4f2d0d8, OKIfNotInitialized=0, 
    runtime=0x7fffe67ad400)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappednativescope.cpp:839
#5  0x00007ffff609871a in XPCWrappedNativeScope::FindInJSObjectScope (
    obj=0x7fffd4f27a28)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcprivate.h:1574
#6  GetContextFromObject (obj=0x7fffd4f27a28)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjsclass.cpp:572
#7  0x00007ffff609c1a3 in nsXPCWrappedJSClass::CallMethod (
    this=0x7fffd4a28470, wrapper=0x7fffd4a02c00, methodIndex=4, 
    info=0x7fffe6765830, nativeParams=0x7ffff6fb59d6)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1299
#8  0x00007ffff6092ac7 in nsXPCWrappedJS::CallMethod (this=0x7fffd4a02c00, 
    methodIndex=53344, info=0x7fffe6765830, params=0x7fffffffb540)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/js/src/xpconnect/src/xpcwrappedjs.cpp:588
#9  0x00007ffff69e8b70 in PrepareAndDispatch (self=<value optimized out>, 
    methodIndex=<value optimized out>, args=0x7fffffffb6c0, 
    gpregs=<value optimized out>, fpregs=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/reflect/xptcall/src/md/unix/xptcstubs_x86_64_linux.cpp:153
#10 0x00007ffff69e7e8b in SharedStub () from objdir-ff-debug/dist/bin/libxul.so
#11 0x00007ffff5d7d928 in nsTreeBoxObject::Clear (this=0x7fffd51e1dc0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/xul/base/src/tree/src/nsTreeBoxObject.cpp:69
#12 0x00007ffff56d50b6 in nsDocument::ClearBoxObjectFor (this=0x7fffdd026000, 
    aContent=0x7fffd4b98480)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsDocument.cpp:5392
#13 0x00007ffff57246cc in nsGenericElement::DestroyContent (
    this=0x7fffd4b98480)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsGenericElement.cpp:3799
#14 0x00007ffff572471e in nsGenericElement::DestroyContent (
---Type <return> to continue, or q <return> to quit---
    this=0x7fffdb40f270)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsGenericElement.cpp:3809
#15 0x00007ffff572471e in nsGenericElement::DestroyContent (
    this=0x7fffd4b60d60)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsGenericElement.cpp:3809
#16 0x00007ffff572471e in nsGenericElement::DestroyContent (
    this=0x7fffd4b609e0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsGenericElement.cpp:3809
#17 0x00007ffff572471e in nsGenericElement::DestroyContent (
    this=0x7fffd51c6100)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsGenericElement.cpp:3809
#18 0x00007ffff572471e in nsGenericElement::DestroyContent (
    this=0x7fffd50d2f80)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsGenericElement.cpp:3809
#19 0x00007ffff56dbfd6 in nsDocument::Destroy (this=0x7fffdd026000)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/content/base/src/nsDocument.cpp:7104
#20 0x00007ffff537ef61 in DocumentViewerImpl::Destroy (this=0x7fffd585a820)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp:1652
#21 0x00007ffff6213bca in nsSHEntry::RemoveFromBFCacheSync (
    this=0x7fffdd096300)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/shistory/src/nsSHEntry.cpp:902
#22 0x00007ffff6214b1a in ~nsSHEntry (this=0x7fffdd096300, 
    __in_chrg=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/shistory/src/nsSHEntry.cpp:173
#23 0x00007ffff6214f1a in nsSHEntry::Release (this=0x7fffdd096300)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/shistory/src/nsSHEntry.cpp:192
#24 0x00007ffff537ee86 in ~nsCOMPtr (this=<value optimized out>)
    at ../../dist/include/nsCOMPtr.h:533
#25 DocumentViewerImpl::Destroy (this=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp:1646
#26 0x00007ffff5384c4e in DocumentViewerImpl::Show (this=0x7fffd4a98f70)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp:1957
#27 0x00007ffff53a578f in nsPresContext::EnsureVisible (this=0x7fffd2b06c00)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresContext.cpp:1691
#28 0x00007ffff53b9a39 in PresShell::UnsuppressAndInvalidate (
    this=0x7fffd2b09800)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:4614
#29 0x00007ffff53ba068 in PresShell::UnsuppressPainting (this=0x7fffd2b09800)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsPresShell.cpp:4664
#30 0x00007ffff537968e in DocumentViewerImpl::LoadComplete (
    this=0x7fffd4a98f70, aStatus=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/layout/base/nsDocumentViewer.cpp:1097

#31 0x00007ffff61a9ced in nsDocShell::EndPageLoad (this=0x7fffdb4d6c00, 
---Type <return> to continue, or q <return> to quit---
    aProgress=<value optimized out>, aChannel=0x7fffd2b70858, aStatus=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp:6080
#32 0x00007ffff61ac019 in nsDocShell::OnStateChange (this=0x7fffdb4d6c00, 
    aProgress=0x7fffdb4d6c28, aRequest=0x7fffd2b70858, 
    aStateFlags=<value optimized out>, aStatus=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/docshell/base/nsDocShell.cpp:5934
#33 0x00007ffff61d0cd8 in nsDocLoader::FireOnStateChange (this=0x7fffdb4d6c00, 
    aProgress=<value optimized out>, aRequest=0x7fffd2b70858, 
    aStateFlags=131088, aStatus=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/uriloader/base/nsDocLoader.cpp:1334
#34 0x00007ffff61d0e3c in nsDocLoader::doStopDocumentLoad (
    this=0x7fffdb4d6c00, request=0x7fffd2b70858, aStatus=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/uriloader/base/nsDocLoader.cpp:942
#35 0x00007ffff61d1209 in nsDocLoader::DocLoaderIsEmpty (this=0x7fffdb4d6c00, 
    aFlushLayout=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/uriloader/base/nsDocLoader.cpp:818
#36 0x00007ffff61d205f in nsDocLoader::OnStopRequest (this=0x7fffdb4d6c00, 
    aRequest=0x7fffd5108a50, aCtxt=<value optimized out>, aStatus=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/uriloader/base/nsDocLoader.cpp:702
#37 0x00007ffff50d26bc in nsLoadGroup::RemoveRequest (this=0x7fffdb4a8920, 
    request=0x7fffd5108a50, ctxt=<value optimized out>, aStatus=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/netwerk/base/src/nsLoadGroup.cpp:680
#38 0x00007ffff52f9c41 in imgRequestProxy::RemoveFromLoadGroup (
    this=0x7fffd5108a50, releaseLoadGroup=1)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/modules/libpr0n/src/imgRequestProxy.cpp:230
#39 0x00007ffff52fdceb in imgRequestProxy::OnStopRequest (this=0x7fffd5108a50, 
    lastPart=1)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/modules/libpr0n/src/imgRequestProxy.cpp:726
#40 0x00007ffff52f40e3 in imgRequest::OnStopRequest (
    this=<value optimized out>, aRequest=0x7fffd4a8cfa0, 
    ctxt=<value optimized out>, status=0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/modules/libpr0n/src/imgRequest.cpp:956
#41 0x00007ffff50b29bc in nsBaseChannel::OnStopRequest (this=0x7fffd4a8cf50, 
    request=<value optimized out>, ctxt=<value optimized out>, 
    status=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/netwerk/base/src/nsBaseChannel.cpp:727
#42 0x00007ffff50c50ee in nsInputStreamPump::OnStateStop (this=0x7fffd57ef980)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/netwerk/base/src/nsInputStreamPump.cpp:578
#43 0x00007ffff50c6528 in nsInputStreamPump::OnInputStreamReady (
    this=0x7fffd57ef980, stream=0x7fffffffe4ef)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/netwerk/base/src/nsInputStreamPump.cpp:403
#44 0x00007ffff699aced in nsInputStreamReadyEvent::Run (this=0x7fffd51e9fc0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/io/nsStreamUtils.cpp:112
#45 0x00007ffff69c5a85 in nsThread::ProcessNextEvent (this=0x7fffe6710200, 
    mayWait=0, result=<value optimized out>)
---Type <return> to continue, or q <return> to quit---
    at /home/NoBackup/Debian/iceweasel/mozilla-central/xpcom/threads/nsThread.cpp:633
#46 0x00007ffff6949074 in NS_ProcessNextEvent_P (thread=0x7ffff71afcf5, 
    mayWait=-6929) at nsThreadUtils.cpp:250
#47 0x00007ffff677cd9b in mozilla::ipc::MessagePump::Run (this=0x7fffe672c080, 
    aDelegate=0x7fffe67226a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/glue/MessagePump.cpp:110
#48 0x00007ffff6a27e46 in MessageLoop::RunInternal (this=0x7fffe67226a0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:219
#49 0x00007ffff6a27ef3 in MessageLoop::RunHandler (this=0x7ffff71afcf5)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:202
#50 MessageLoop::Run (this=0x7ffff71afcf5)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/ipc/chromium/src/base/message_loop.cc:176
#51 0x00007ffff65c8d70 in nsBaseAppShell::Run (this=0x7fffe674ebe0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/widget/src/xpwidgets/nsBaseAppShell.cpp:192
#52 0x00007ffff62b356a in nsAppStartup::Run (this=0x7fffe313b6f0)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/components/startup/src/nsAppStartup.cpp:220
#53 0x00007ffff507e014 in XRE_main (argc=<value optimized out>, 
    argv=<value optimized out>, aAppData=<value optimized out>)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/toolkit/xre/nsAppRunner.cpp:3766
#54 0x0000000000401cbc in main (argc=1, argv=0x7fffffffd718)
    at /home/NoBackup/Debian/iceweasel/mozilla-central/browser/app/nsBrowserApp.cpp:158
(gdb)
Comment 21 Ludovic Rousseau 2011-02-17 02:00:51 PST
I also updated to the current mercurial version in the hope to fix the compilation problem.

I also get the crash without the patch. The problem is in the current mercurial version. Argh :-(
Comment 22 timeless 2011-02-17 03:37:40 PST
Comment on attachment 512592 [details] [diff] [review]
untested proposal

thanks
Comment 23 Ludovic Rousseau 2011-02-21 02:22:44 PST
I can now have a running firefox with current hg version.

The modified patch does solve the problem. The PIN is asked a second time and the certificate is deleted. Problem fixed for me.

I attach the patch I am using. I changed the SafeElementAt(j) in SafeElementAt(j, NULL) to make the code compile.
Comment 24 Ludovic Rousseau 2011-02-21 02:24:06 PST
Created attachment 513954 [details] [diff] [review]
edited version of the previous patch
Comment 25 Kai Engert (:kaie) 2011-04-13 13:20:46 PDT
Comment on attachment 513954 [details] [diff] [review]
edited version of the previous patch

Thanks a lot for your work on this problem. I agree with adding the safety checks you've proposed, but please double check and adjust based on my following comments:


>@@ -313,10 +315,11 @@
>     return nsnull;
> 
>   nsIX509Cert *rawPtr = nsnull;
>+  nsCertAddonInfo *addonInfo;
>   if (certdi->mCert) {
>     rawPtr = certdi->mCert;
>-  } else if (certdi->mAddonInfo) {
>-    rawPtr = certdi->mAddonInfo->mCert;
>+  } else if ((addonInfo = certdi->mAddonInfo)) {
>+    rawPtr = addonInfo->mCert;
>   }
>   NS_IF_ADDREF(rawPtr);
>   return rawPtr;

This is unnecessary, no semantic change here. Please let's avoid assignments in if conditions.
(You could simply remove this part from the patch file).


>@@ -616,9 +619,10 @@
>       int InsertPosition = 0;
>       for (; InsertPosition < count; ++InsertPosition) {
>         nsCOMPtr<nsIX509Cert> cert = nsnull;
>-        nsRefPtr<nsCertTreeDispInfo> elem = mDispInfo.ElementAt(InsertPosition);
>-        if (elem->mAddonInfo) {
>-          cert = mDispInfo.ElementAt(InsertPosition)->mAddonInfo->mCert;
>+        nsRefPtr<nsCertTreeDispInfo> elem = mDispInfo.SafeElementAt(InsertPosition, NULL);
>+        nsCertAddonInfo *addonInfo = elem->mAddonInfo;
>+        if (addonInfo) {
>+          cert = addonInfo->mCert;


If I understand correctly, as a result of SafeElementAt, "elem" can be null, too.
If you avoid the local variable, you can add the check and write it simpler as:

        nsRefPtr<nsCertTreeDispInfo> elem = mDispInfo.SafeElementAt(InsertPosition, NULL);
        if (elem && elem->mAddonInfo) {
          cert = elem->mAddonInfo->mCert;


>     while (0 == CmpBy(&mCompareCache, orgCert, nextCert, sort_IssuerOrg, sort_None, sort_None)) {
>       mTreeArray[i].numChildren++;
>       if (++j >= count) break;
>       nextCert = nsnull;
>-      if (mDispInfo.ElementAt(j)->mAddonInfo) {
>-        nextCert = mDispInfo.ElementAt(j)->mAddonInfo->mCert;
>+      if ((addonInfo = mDispInfo.SafeElementAt(j, NULL)->mAddonInfo)) {
>+        nextCert = addonInfo->mCert;
>       }

Please move the assignment to its own separate line, prior to "if".



>@@ -813,18 +819,19 @@
>     if (index < idx + nc) { // cert is within range of this thread
>       PRInt32 certIndex = cIndex + index - idx;
> 
>-      nsRefPtr<nsCertTreeDispInfo> certdi = mDispInfo.ElementAt(certIndex);
>+      nsRefPtr<nsCertTreeDispInfo> certdi = mDispInfo.SafeElementAt(certIndex, NULL);
>       nsCOMPtr<nsIX509Cert> cert = nsnull;
>-      if (certdi->mAddonInfo) {
>-        cert = certdi->mAddonInfo->mCert;
>+      nsCertAddonInfo *addonInfo = certdi->mAddonInfo;
>+      if (addonInfo) {
>+        cert = addonInfo->mCert;


Again, shouldn't you check that certdi is non-null?

      nsRefPtr<nsCertTreeDispInfo> certdi = mDispInfo.SafeElementAt(certIndex, NULL);
      nsCOMPtr<nsIX509Cert> cert = nsnull;
      if (certdi && certdi->mAddonInfo) {
        cert = certdi->mAddonInfo->mCert;



>+      addonInfo = certdi->mAddonInfo;


Shouldn't this be:

      addonInfo = (certdi) ? certdi->mAddonInfo : nsnull;


>       if (certdi->mTypeOfEntry == nsCertTreeDispInfo::host_port_override) {

Either using SafeElement for certdi is unnecessary, or you should consequencely null-check every use of certdi.


>@@ -1144,8 +1151,10 @@
>     return NS_ERROR_FAILURE;
> 
>   nsCOMPtr<nsIX509Cert> cert = certdi->mCert;
>-  if (!cert && certdi->mAddonInfo) {
>-    cert = certdi->mAddonInfo->mCert;
>+  if (!cert) {
>+    nsCertAddonInfo *addonInfo = certdi->mAddonInfo;
>+    if (addonInfo)
>+      cert = addonInfo->mCert;
>   }

This looks like an unnecessary change, I see no new safety checks.
Comment 26 Kai Engert (:kaie) 2011-08-10 07:24:55 PDT
We should get these safety checks added.
Assigning to myself, because nothing has happened in the last couple of months, and I have reviewed this code before.

I will attach a new patch which adds my proposals from comment 25.

While adding it, I noticed that a lot of the code inside nsCertTree::DeleteEntryObject should be wrapped by a certdi-non-null-check.
Comment 27 Kai Engert (:kaie) 2011-08-10 07:25:46 PDT
Note, this code is used by Certificate Manager to manage its tree display of certificates.
Comment 28 Kai Engert (:kaie) 2011-08-10 07:26:10 PDT
Created attachment 552072 [details] [diff] [review]
Patch v3
Comment 29 Kai Engert (:kaie) 2011-08-10 07:26:44 PDT
Created attachment 552073 [details] [diff] [review]
v3 ignoring whitespace, slightly easier to review
Comment 30 Kai Engert (:kaie) 2011-08-10 07:29:54 PDT
I'd argue that most of v3 has r=kaie,
except my additional 
  if(!certdi){}
block, but that should be obviously correct, because most of that code inside it depends on members of certdi.

I'll welcome any additional reviews, but this code is quite tricky.
If nobody has time, I propose to land this as is, after the next merge date (August 18).
Comment 31 Kai Engert (:kaie) 2011-08-18 13:40:40 PDT
Nobody has objected, so I'm going to land on mozilla-inbound.
Comment 32 Justin Dolske [:Dolske] 2012-04-15 18:06:53 PDT
Comment on attachment 552073 [details] [diff] [review]
v3 ignoring whitespace, slightly easier to review

(In reply to Kai Engert (:kaie) from comment #31)
> Nobody has objected, so I'm going to land on mozilla-inbound.

The world waits! :)

I'm going through unassigned reviews, please either land if this was appropriate or have bsmith review/delegate as appropriate. Thanks!
Comment 33 Kai Engert (:kaie) 2012-04-16 16:12:33 PDT
Comment on attachment 552073 [details] [diff] [review]
v3 ignoring whitespace, slightly easier to review

remove review request, was optional.

thanks for the reminder. will land now.
Comment 34 Kai Engert (:kaie) 2012-04-16 16:38:04 PDT
Let's see if this sticks.
https://hg.mozilla.org/integration/mozilla-inbound/rev/003de68df57a
Comment 35 Marco Bonardo [::mak] 2012-04-17 07:45:10 PDT
https://hg.mozilla.org/mozilla-central/rev/003de68df57a

Note You need to log in before you can comment on or make changes to this bug.