avarun42 / arora-wiki

Automatically exported from code.google.com/p/arora
0 stars 0 forks source link

Deleting history entries produces segfault #243

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Having history filled in with some web pages already, open history manager.
2. Try to remove some of the pages from the history.
3. Sometimes it produces segfault, best try it out with the top element.

I don't know what it depends on and why sometimes it works and sometimes
not, don't have currently time to investigate it further. It may happen
that I will fix this anyway in my branch but I reported it here in case if not.

Ah... the problem is connected with EditTreeView and does not occure with
bookmarks manager, only with history. Just a hint.

Original issue reported on code.google.com by faw...@gmail.com on 10 Jan 2009 at 4:12

GoogleCodeExporter commented 9 years ago
What version of QT (to reproduce)?

Original comment by ice...@gmail.com on 10 Jan 2009 at 5:30

GoogleCodeExporter commented 9 years ago
4.4.3.

Original comment by faw...@gmail.com on 10 Jan 2009 at 6:09

GoogleCodeExporter commented 9 years ago

Original comment by ice...@gmail.com on 2 Mar 2009 at 8:37

GoogleCodeExporter commented 9 years ago
I managed to reproduce such a crash. I think this happens when one tries to 
delete a
history item currently open in some tab.

Thread 1 (Thread 0x7f6944acb760 (LWP 24416)):
#0  QSortFilterProxyModelPrivate::proxy_to_source (this=0x20a38d0,
proxy_index=@0x7fff4caffc60) at src/corelib/tools/qvector.h:119
#1  0x00007f694312595d in QSortFilterProxyModel::mapToSource (this=<value 
optimized
out>, proxyIndex=@0x7fff4caffc60)             
    at itemviews/qsortfilterproxymodel.cpp:2361                                     

#2  0x00007f694312a312 in QSortFilterProxyModel::index (this=0x20a38d0, row=0,
column=0, parent=@0x7fff4caffc60) at itemviews/qsortfilterproxymodel.cpp:1512
#3  0x0000000000450a9d in EditTreeView::removeSelected (this=<value optimized 
out>)
at edittreeview.cpp:97                                                  
#4  0x000000000049b978 in EditTreeView::qt_metacall (this=0x2151430,
_c=QMetaObject::InvokeMetaMethod, _id=78388, _a=<value optimized out>)          

    at .moc/moc_edittreeview.cpp:68                                                 

#5  0x00007f6940c23e6d in QMetaObject::activate (sender=0x2146700,
from_signal_index=<value optimized out>, to_signal_index=30, argv=0x0)          

    at kernel/qobject.cpp:3108                                                      

#6  0x00007f69431c3767 in QAbstractButton::clicked (this=0x0, _t1=false) at
.moc/release-shared/moc_qabstractbutton.cpp:200                                 
#7  0x00007f6942f5d68b in QAbstractButtonPrivate::emitClicked (this=0x2148170) 
at
widgets/qabstractbutton.cpp:543                                           
#8  0x00007f6942f5e542 in QAbstractButtonPrivate::click (this=0x2148170) at
widgets/qabstractbutton.cpp:536                                                 
#9  0x00007f6942f5e775 in QAbstractButton::mouseReleaseEvent (this=0x2146700,
e=0x7fff4cb00700) at widgets/qabstractbutton.cpp:1115                         
#10 0x00007f6942c58e00 in QWidget::event (this=0x2146700, event=0x7fff4cb00700) 
at
kernel/qwidget.cpp:7521                                                  
#11 0x00007f6942c0b6bd in QApplicationPrivate::notify_helper (this=0x1d93ca0,
receiver=0x2146700, e=0x7fff4cb00700) at kernel/qapplication.cpp:4057         
#12 0x00007f6942c14809 in QApplication::notify (this=<value optimized out>,
receiver=0x2146700, e=0x7fff4cb00700) at kernel/qapplication.cpp:3759           
---Type <return> to continue, or q <return> to quit---                          

#13 0x00007f6940c11a3b in QCoreApplication::notifyInternal (this=0x7fff4cb02480,
receiver=0x2146700, event=0x7fff4cb00700) at kernel/qcoreapplication.cpp:606
#14 0x00007f6942c13aa8 in QApplicationPrivate::sendMouseEvent 
(receiver=0x2146700,
event=0x7fff4cb00700, alienWidget=0x2146700, nativeWidget=0x207ffe0,      
    buttonDown=<value optimized out>, lastMouseReceiver=@0x7f6943569f70) at
src/corelib/kernel/qcoreapplication.h:216                                       

#15 0x00007f6942c6e85c in QETWidget::translateMouseEvent (this=0x207ffe0,
event=<value optimized out>) at kernel/qapplication_x11.cpp:4448                

#16 0x00007f6942c6d395 in QApplication::x11ProcessEvent (this=0x7fff4cb02480,
event=0x7fff4cb020f0) at kernel/qapplication_x11.cpp:3566                      
#17 0x00007f6942c9227c in x11EventSourceDispatch (s=0x1d99b10, callback=0,
user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146                       

#18 0x00007f6940214711 in IA__g_main_context_dispatch (context=0x1d98d20) at
gmain.c:2144                                                                    
#19 0x00007f6940217e8d in g_main_context_iterate (context=0x1d98d20, block=1,
dispatch=1, self=<value optimized out>) at gmain.c:2778                        
#20 0x00007f694021804b in IA__g_main_context_iteration (context=0x1d98d20,
may_block=1) at gmain.c:2841                                                    

#21 0x00007f6940c36eaf in QEventDispatcherGlib::processEvents (this=0x1d964c0,
flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:324          
#22 0x00007f6942c91b3f in QGuiEventDispatcherGlib::processEvents (this=0x0,
flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202         

#23 0x00007f6940c103f2 in QEventLoop::processEvents (this=<value optimized out>,
flags={i = 1286611936}) at kernel/qeventloop.cpp:149                        
#24 0x00007f6940c10585 in QEventLoop::exec (this=0x7fff4cb02420, flags={i =
1286612016}) at kernel/qeventloop.cpp:196
#25 0x00007f6940c1261c in QCoreApplication::exec () at 
kernel/qcoreapplication.cpp:888
#26 0x00000000004991dd in main (argc=1, argv=0x7fff4cb026b8) at main.cpp:67
(gdb) f 3
#3  0x0000000000450a9d in EditTreeView::removeSelected (this=<value optimized 
out>)
at edittreeview.cpp:97
97          QModelIndex idx = model()->index(first.row(), 0, firstParent);
(gdb) list
92          for (int i = selectedRows.count() - 1; i >= 0; --i) {
93              QModelIndex idx = selectedRows.at(i);
94              model()->removeRow(idx.row(), idx.parent());
95          }
96          // select the item at the same position
97          QModelIndex idx = model()->index(first.row(), 0, firstParent);
98          // if that was the last item
99          if (!idx.isValid()) {
100             int parentRows = model()->rowCount(firstParent);
101             if (parentRows == 0) {
(gdb) print firstParent
$2 = {r = 0, c = 0, p = 0x20a6e20, m = 0x214a110}

Original comment by Risti...@gmail.com on 13 May 2009 at 8:34