layout/xul/tree/crashtests/730441-3.xul

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/layout/xul/tree/crashtests/730441-3.xul	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,38 @@
     1.4 +<?xml version="1.0"?>
     1.5 +<!--
     1.6 +###!!! ASSERTION: You can't dereference a NULL nsCOMPtr with operator->().: 'mRawPtr != 0', file ../../../../dist/include/nsCOMPtr.h, line 796
     1.7 +
     1.8 +Program received signal SIGSEGV, Segmentation fault.
     1.9 +0xb6b7463a in nsTreeContentView::SetTree (this=0xb0ba2510, aTree=0xaaecece0) at layout/xul/base/src/tree/src/nsTreeContentView.cpp:571
    1.10 +571        boxObject->GetElement(getter_AddRefs(element));
    1.11 +(gdb) bt 3
    1.12 +#0  0xb6b7463a in nsTreeContentView::SetTree (this=0xb0ba2510, aTree=0xaaecece0) at layout/xul/base/src/tree/src/nsTreeContentView.cpp:571
    1.13 +#1  0xb736c76f in NS_InvokeByIndex_P () at xpcom/reflect/xptcall/src/md/unix/xptcinvoke_gcc_x86_unix.cpp:69
    1.14 +#2  0xb6171901 in XPCWrappedNative::CallMethod (ccx=..., mode=XPCWrappedNative::CALL_METHOD)
    1.15 +    at js/src/xpconnect/src/xpcwrappednative.cpp:2722
    1.16 +(More stack frames follow...)
    1.17 +(gdb) list 566
    1.18 +561    nsTreeContentView::SetTree(nsITreeBoxObject* aTree)
    1.19 +562    {
    1.20 +563      ClearRows();
    1.21 +564
    1.22 +565      mBoxObject = aTree;
    1.23 +566
    1.24 +567      if (aTree && !mRoot) {
    1.25 +568        // Get our root element
    1.26 +569        nsCOMPtr<nsIBoxObject> boxObject = do_QueryInterface(mBoxObject);
    1.27 +570        nsCOMPtr<nsIDOMElement> element;
    1.28 +571        boxObject->GetElement(getter_AddRefs(element));
    1.29 +(gdb) p boxObject
    1.30 +$16 = {mRawPtr = 0x0}
    1.31 +
    1.32 +|aTree| does not implement |nsIBoxObject|, so |do_QueryInterface(mBoxObject)|
    1.33 +returns null. Then we have |null->GetElement()|.
    1.34 +-->
    1.35 +<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
    1.36 +        onload="document.getElementById('tree').view.setTree({});">
    1.37 +<tree id="tree">
    1.38 +  <treechildren/>
    1.39 +</tree>
    1.40 +</window>
    1.41 +

mercurial