Re: Dillo_grows merged

Nick Warne <nick-ucsffw2X/[email protected]>
Newsgroups gmane.comp.web.dillo.devel
Message-ID <[email protected]>
On Sat, 14 May 2016 22:48:12 +0000
eocene <[email protected]> wrote:

> > Searching the page doesn't cause any more, though.  
> 
> Searching backward causes segfaults with regularity.

Messing about with this this morning, the segfault happens when using
'previous' goes back past the first found 'next'.

i.e. start Dillo with the default home page and search text for 'the'.
find the next 'the' a few times, and then use 'previous'.  It will work
OK until it gets back to the beginning when the next (and final)
'previous' will crash Dillo.

Looks like the index is going off the bottom of the search list.

I looked at the code a bit, but C++ is all greek to me.

Strangely, gdb always reports:

Program received signal SIGSEGV, Segmentation fault.
0x080b4638 in dw::oof::OOFAwareWidget::OOFAwareWidgetIterator::getPart (
    this=0x836ec60, sectionIndex=5, index=8, content=0x836ec64)
    at oofawarewidget_iterator.cc:102
102	         widget->outOfFlowMgr[sectionIndex - 1]->getWidget
(index);

this -> sectionIndex=5, index=8

and a backtrace:

#0  0x080b4638 in
dw::oof::OOFAwareWidget::OOFAwareWidgetIterator::getPart (
    this=0x836ec60, sectionIndex=5, index=8, content=0x836ec64)
    at oofawarewidget_iterator.cc:102
#1  0x080b4822 in dw::oof::OOFAwareWidget::OOFAwareWidgetIterator::prev
(
    this=0x836ec60) at oofawarewidget_iterator.cc:216
#2  0x080c3d5c in dw::core::DeepIterator::prev
(this=this@entry=0x83712b0)
    at iterator.cc:708
#3  0x080c4058 in dw::core::CharIterator::prev (this=0x8360298)
    at iterator.cc:825
#4  0x080c2877 in dw::core::FindtextState::search (this=0x82c6244, 
    key=key@entry=0x836e9d8 "the", caseSens=false, 
    backwards=backwards@entry=true) at findtext.cc:135
#5  0x08058e43 in search (backwards=1, caseSens=false, str=0x836e9d8
"the", 
    this=<optimized out>) at ../dw/layout.hh:431
#6  a_UIcmd_findtext_search (bw=0x82c5768, key=0x836e9d8 "the",
case_sens=0, 
    backward=1) at uicmd.cc:1484
#7  0x08089964 in Findbar::searchBackwards_cb (vfb=0x826d4c8) at
findbar.cc:100
#8  0xb7ef2677 in Fl_Widget::do_callback(Fl_Widget*, void*) ()
   from /usr/lib/libfltk.so.1.3
#9  0xb7e99d13 in Fl_Button::handle(int) () from /usr/lib/libfltk.so.1.3
#10 0xb7e91098 in ?? () from /usr/lib/libfltk.so.1.3
#11 0xb7e92ffd in Fl::handle_(int, Fl_Window*) ()
from /usr/lib/libfltk.so.1.3
#12 0xb7e9340c in Fl::handle(int, Fl_Window*) ()
from /usr/lib/libfltk.so.1.3
#13 0xb7efa0a8 in fl_handle(_XEvent const&) ()
from /usr/lib/libfltk.so.1.3
---Type <return> to continue, or q <return> to quit---
#14 0xb7efb400 in ?? () from /usr/lib/libfltk.so.1.3
#15 0xb7efb5f2 in ?? () from /usr/lib/libfltk.so.1.3
#16 0xb7e929c7 in Fl::wait(double) () from /usr/lib/libfltk.so.1.3
#17 0xb7e92ace in Fl::run() () from /usr/lib/libfltk.so.1.3
#18 0x080514e0 in main (argc=1, argv=0xbffff0d4) at dillo.cc:578

Hope that helps.

Nick
-- 
Gosh that takes me back... or is it forward?  That's the trouble with
time travel, you never can tell."
		-- Doctor Who "Androids of Tara"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.