kdelibs/khtml

David Faure faure at kde.org
Wed May 5 15:59:21 BST 2004


On Wednesday 05 May 2004 15:02, Leo Savernik wrote:
> Am Mittwoch 05 Mai 2004 13:46 schrieb Michael Brade:
> > On Wednesday 05 May 2004 00:22, David Faure wrote:
> > > CVS commit by faure:
> > >
> > > Something must have changed... Can't find a site that crashes, anymore.
> > > If someone gets a crash, please report it to kfm-devel.
> >
> > I guess the original one is still there - just open the Qt docs, e.g.
> > QAccel. Then simply click (!) on a bit of text in "Public Members". Crash:
> 
> Which, as expected, I cannot reproduce :-(

And as expected, I can...

khtml (caret): findRenderer: node 0x85268c0 #text offset 10 r 0x850a440[RenderText] r_ofs 10 outside false outsideEnd true
khtml (caret): =================== findCaretBoxLine
khtml (caret): node 0x85268c0 offset: 10 r RenderText[0x850a440].node #text[0x85268c0] r_ofs 10 outside false outsideEnd true
khtml (caret): text-box b: 0x84d01ec baseFlowBox: 0x84d01a4 contains " ( QWidget * pa"
khtml (caret): =================== end findCaretBoxLine (renderText)
khtml (caret): box 0x84d01a4
khtml (caret): box->object 0x850a2dc
khtml (caret): x 0 y 0 w 327 h 16 baseline 12 ifb true itb false rlb true
khtml (caret): isinlineflowbox 0x84d01a4
khtml (caret): this 0x8493550 flowBox 0x84d01a4 firstChild 0x84d0178
khtml (caret): == recursive invocation
khtml (caret): box 0x84d0178
khtml (caret): box->object 0x85578dc
zsh: segmentation fault (core dumped)  konqueror $QTDIR/doc/html/qaccel.html

#0  0x41b429ee in khtml::CaretBoxLine::addConvertedInlineBox(khtml::InlineBox*, khtml::CaretBoxLine::SeekBoxParams&) (
    this=0x8493550, box=0x84d0178, sbp=@0xbfffddd0) at khtml_caret.cpp:954
954     kdDebug(6200) << "x " << box->m_x << " y " << box->m_y << " w " << box->m_width << " h " << box->m_height << " baseline " << box->m_baseline << " ifb " << box->isInlineFlowBox() << " itb " << box->isInlineTextBox() << " rlb " << box->isRootInlineBox() << endl;
(gdb) p box
$1 = (class InlineBox *) 0x84d0178
(gdb) p *box
$2 = {_vptr.InlineBox = 0x0, m_object = 0x85578dc, m_x = 0, m_y = 0, m_width = 0, m_height = 12, m_baseline = 12,
  m_firstLine = true, m_constructed = true, m_next = 0x84d2224, m_prev = 0x0, m_parent = 0x84d21a8}

So this is again the non-null box with a null vtable.... Which probably means it got deleted (?).

(gdb) bt
#0  0x41b429ee in khtml::CaretBoxLine::addConvertedInlineBox(khtml::InlineBox*, khtml::CaretBoxLine::SeekBoxParams&) (
    this=0x8493550, box=0x84d0178, sbp=@0xbfffddd0) at khtml_caret.cpp:954
#1  0x41b42ec3 in khtml::CaretBoxLine::addConvertedInlineBox(khtml::InlineBox*, khtml::CaretBoxLine::SeekBoxParams&) (
    this=0x8493550, box=0x84d01a4, sbp=@0xbfffddd0) at khtml_caret.cpp:994
#2  0x41b437a9 in khtml::CaretBoxLine::constructCaretBoxLine(khtml::MassDeleter<khtml::CaretBoxLine>*, khtml::InlineFlowBox*, khtml::InlineBox*, bool, bool, khtml::CaretBoxIterator&, khtml::RenderObject*) (deleter=0xbfffdfb0, basicFlowBox=0x84d01a4,
    seekBox=0x84d01ec, seekOutside=false, seekOutsideEnd=181, iter=@0xbfffdfa0, seekObject=0x0) at khtml_caret.cpp:1117
#3  0x41b447da in findCaretBoxLine (node=0x85268c0, offset=10, cblDeleter=0xbfffdfb0, advpol=VisibleFlows, base=0x849bc44,
    r_ofs=@0xbfffdfac, caretBoxIt=@0xbfffdfa0) at khtml_caret.cpp:1762
#4  0x41b4f094 in KHTMLView::moveCaretTo(DOM::NodeImpl*, long, bool) (this=0x83ad2a0, node=0x85268c0, offset=10, clearSel=true)
    at /mnt/devel/kde/kdecvs/kdelibs/khtml/khtmlview.cpp:3081
#5  0x41b73192 in KHTMLPart::khtmlMousePressEvent(khtml::MousePressEvent*) (this=0x83ab810, event=0xbfffe2b0)
    at /mnt/devel/kde/kdecvs/kdelibs/khtml/khtml_part.cpp:5295
#6  0x41b72a2a in KHTMLPart::customEvent(QCustomEvent*) (this=0x83ab810, event=0xbfffe2b0)
    at /mnt/devel/kde/kdecvs/kdelibs/khtml/khtml_part.cpp:5148


-- 
David Faure, faure at kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).




More information about the kfm-devel mailing list