Opened 9 years ago

Closed 9 years ago

#2726 closed defect (fixed)

Crash when moving ways

Reported by: nick@… Owned by: Chris Browet
Priority: major Milestone:
Component: merkaartor Version:
Keywords: Cc:


This is using the SVN sources, version 0.15-svn(20032M). QT version 4.6.2.

ASSERT failure in QList<T>::operator[]: "index out of range", file /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h, line 447

Program received signal SIGABRT, Aborted.
[Switching to Thread 0xb53f78d0 (LWP 30712)]
0xb7f38410 in __kernel_vsyscall ()
(gdb) bt
#0  0xb7f38410 in __kernel_vsyscall ()

#1  0xb572c085 in raise () from /lib/tls/i686/cmov/

#2  0xb572da01 in abort () from /lib/tls/i686/cmov/

#3  0x08131692 in myMessageOutput (msgType=QtFatalMsg, 
    buf=0x9fbd288 "ASSERT failure in QList<T>::operator[]: \"index out of range\", file /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h, line 447") at Main.cpp:64

#4  0xb59f18a5 in qt_message_output (msgType=QtFatalMsg, 
    buf=0x9fbd288 "ASSERT failure in QList<T>::operator[]: \"index out of range\", file /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h, line 447") at global/qglobal.cpp:2196

#5  0xb59f1aeb in qt_message (msgType=QtFatalMsg, msg=0xb5b7526c "ASSERT failure in %s: \"%s\", file %s, line %d", 
    ap=0xbfd18344 "\004\234/\b�\233/\b�\233/\b�\001") at global/qglobal.cpp:2296

#6  0xb59f1c09 in qFatal (msg=0xb5b7526c "ASSERT failure in %s: \"%s\", file %s, line %d") at global/qglobal.cpp:2479

#7  0xb59f1c4c in qt_assert_x (where=0x82f9c04 "QList<T>::operator[]", what=0x82f9bf1 "index out of range", 
    file=0x82f9bbc "/usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h", line=447) at global/qglobal.cpp:2021

#8  0x08072740 in QList<Feature*>::operator[] (this=0x9e21fd4, i=1) at /usr/local/Trolltech/Qt-4.6.2/include/QtCore/qlist.h:447

#9  0x081c2856 in Feature::getParent (this=0x9e21ef8, i=1) at Features/Feature.cpp:609

#10 0x082756fc in MoveNodeInteraction::snapMouseReleaseEvent (this=0x870cfc0, event=0xbfd18bac, Closer=0x0)
    at Interactions/MoveNodeInteraction.cpp:133

#11 0x082730b0 in FeatureSnapInteraction::mouseReleaseEvent (this=0x870cfc0, event=0xbfd18bac) at Interactions/Interaction.cpp:219

#12 0x081014a7 in MapView::mouseReleaseEvent (this=0x8630dd0, event=0xbfd18bac) at MapView.cpp:545

#13 0xb5f2a729 in QWidget::event (this=0x8630dd0, event=0xbfd18bac) at kernel/qwidget.cpp:7998

#14 0x081029d8 in MapView::event (this=0x8630dd0, event=0xbfd18bac) at MapView.cpp:870

#15 0xb5ec6d7c in QApplicationPrivate::notify_helper (this=0x8482758, receiver=0x8630dd0, e=0xbfd18bac) at kernel/qapplication.cpp:4300

#16 0xb5ecf684 in QApplication::notify (this=0xbfd196d8, receiver=0x8630dd0, e=0xbfd18bac) at kernel/qapplication.cpp:3865

#17 0xb5b0826b in QCoreApplication::notifyInternal (this=0xbfd196d8, receiver=0x8630dd0, event=0xbfd18bac) at kernel/qcoreapplication.cpp:704

#18 0xb5ec9c42 in QApplicationPrivate::sendMouseEvent (receiver=0x8630dd0, event=0xbfd18bac, alienWidget=0x8630dd0, nativeWidget=0xbfd193d8, 
    buttonDown=0xb68384b8, lastMouseReceiver=@0xb68384bc, spontaneous=true)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215

#19 0xb5f571f5 in QETWidget::translateMouseEvent (this=0xbfd193d8, event=0xbfd19128) at kernel/qapplication_x11.cpp:4368

#20 0xb5f568bf in QApplication::x11ProcessEvent (this=0xbfd196d8, event=0xbfd19128) at kernel/qapplication_x11.cpp:3379

#21 0xb5f81bd4 in x11EventSourceDispatch (s=0x8489de8, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146

#22 0xb54e3cf6 in g_main_context_dispatch () from /usr/lib/

#23 0xb54e70b3 in ?? () from /usr/lib/

#24 0xb54e766e in g_main_context_iteration () from /usr/lib/

#25 0xb5b35c81 in QEventDispatcherGlib::processEvents (this=0x8486f78, flags=@0xbfd192c8) at kernel/qeventdispatcher_glib.cpp:412

#26 0xb5f819c5 in QGuiEventDispatcherGlib::processEvents (this=0x8486f78, flags=@0xbfd192f8) at kernel/qguieventdispatcher_glib.cpp:204

#27 0xb5b0728d in QEventLoop::processEvents (this=0xbfd19370, flags=@0xbfd19334) at kernel/qeventloop.cpp:149

#28 0xb5b075ea in QEventLoop::exec (this=0xbfd19370, flags=@0xbfd19378) at kernel/qeventloop.cpp:201

#29 0xb5b09a91 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981

#30 0xb5ec6577 in QApplication::exec () at kernel/qapplication.cpp:3579

#31 0x08130fd9 in main (argc=Cannot access memory at address 0x77f8
) at Main.cpp:208

(gdb) list 610

605	}


607	Feature* Feature::getParent(int i)

608	{

609		return p->Parents[i];

610	}

(gdb) print p->Parents

$7 = {{p = {static shared_null = {ref = {_q_value = 18224}, alloc = 0, begin = 0, end = 0, sharable = 1, array = {0x0}}, d = 0x9e0abf0}, 
    d = 0x9e0abf0}}

(gdb) print i

$8 = 1

Change History (4)

comment:1 Changed 9 years ago by talmik

The very similar crash (Segfault) with creating and moving area. ASSERT failure in QList<T>::operator[]: "index out of range", file /usr/include/qt4/QtCore/qlist.h, line 403 Reproduciton is not exactly way: Create area, move the midpoints of the lines to create new points on the lines. Merge some created points, move the area...

0x0012d422 in kernel_vsyscall () (gdb) bt #0 0x0012d422 in kernel_vsyscall () #1 0x01efc4d1 in *GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64 #2 0x01eff932 in *GI_abort () at abort.c:92 #3 0x081296dd in myMessageOutput (msgType=QtFatalMsg?,

buf=0x8cde808 "ASSERT failure in QList<T>::operator[]: \"index out of range\", file /usr/include/qt4/QtCore/qlist.h, line 403") at Main.cpp:64

#4 0x01b95f35 in qt_message_output(QtMsgType?, char const*) () from /usr/lib/ #5 0x01b9606e in qFatal(char const*, ...) () from /usr/lib/ #6 0x01b9611c in qt_assert_x(char const*, char const*, char const*, int) () from /usr/lib/ #7 0x080710a2 in QList<Feature*>::operator[] (this=0x899b384, i=1) at /usr/include/qt4/QtCore/qlist.h:403 #8 0x081af1fc in Feature::getParent (this=0x893fe00, i=1) at Features/Feature?.cpp:609 #9 0x08255f08 in MoveNodeInteraction::snapMouseReleaseEvent (this=0x8cbeff0, event=0xbfffd5e0, Closer=0x0)

at Interactions/MoveNodeInteraction?.cpp:133

#10 0x08253b7b in FeatureSnapInteraction::mouseReleaseEvent (this=0x8cbeff0, event=0xbfffd5e0) at Interactions/Interaction?.cpp:219 #11 0x08104a07 in MapView::mouseReleaseEvent (this=0x88bde18, event=0xbfffd5e0) at MapView?.cpp:545 #12 0x01212012 in QWidget::event(QEvent*) () from /usr/lib/ #13 0x08106380 in MapView::event (this=0x88bde18, event=0xbfffd5e0) at MapView?.cpp:870 #14 0x011bcf54 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/ #15 0x011c5033 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/ #16 0x01c8f6cb in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/ #17 0x011c3f6e in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget, QPointer<QWidget>&) ()

from /usr/lib/

#18 0x012327c0 in ?? () from /usr/lib/ #19 0x01231c4b in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/ #20 0x0125e502 in ?? () from /usr/lib/ #21 0x02248e88 in g_main_dispatch (context=0x8475310) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:1960 #22 IAg_main_context_dispatch (context=0x8475310) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2513 #23 0x0224c730 in g_main_context_iterate (context=0x8475310, block=<value optimized out>, dispatch=1, self=0x8473338)

at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2591

#24 0x0224c863 in IAg_main_context_iteration (context=0x8475310, may_block=1) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2654 #25 0x01cba02c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/ #26 0x0125dbe5 in ?? () from /usr/lib/ #27 0x01c8dc79 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/ #28 0x01c8e0ca in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/ #29 0x01c9053f in QCoreApplication::exec() () from /usr/lib/

comment:2 Changed 9 years ago by Toby Speight

Summary: Crash when moving Karlshrue schema linesCrash when moving ways

I get something similar with 0.15-svn(20035M), just by downloading an area and moving any way:

#0  0x00007ffff4071f55 in *__GI_raise (sig=<value optimized out>)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff4074d90 in *__GI_abort () at abort.c:88
#2  0x0000000000519ddf in myMessageOutput (msgType=QtFatalMsg, 
    buf=0x1307c28 "ASSERT failure in QList<T>::operator[]: \"index out of range\", file /usr/include/qt4/QtCore/qlist.h, line 403") at Main.cpp:64
#3  0x00007ffff4dbc6d3 in qt_message_output(QtMsgType, char const*) ()
   from /usr/lib/
#4  0x00007ffff4dbc87b in qFatal(char const*, ...) ()
   from /usr/lib/
#5  0x0000000000435ccf in QList<Feature*>::operator[](int) ()
#6  0x00000000005baacc in Feature::getParent (this=0x939a120, i=1)
    at Features/Feature.cpp:609
#7  0x000000000067d857 in MoveNodeInteraction::snapMouseReleaseEvent (
    this=0xff8f50, event=0x7fffffffbae0, Closer=0x9280920)
    at Interactions/MoveNodeInteraction.cpp:133
#8  0x0000000000677ec4 in EditInteraction::snapMouseReleaseEvent (
    this=0xeee530, ev=0x7fffffffbae0, aLast=0x9280920)
    at Interactions/EditInteraction.cpp:127
#9  0x000000000067add0 in FeatureSnapInteraction::mouseReleaseEvent (
    this=0xeee530, event=0x7fffffffbae0) at Interactions/Interaction.cpp:219
#10 0x00000000004ef323 in MapView::mouseReleaseEvent (this=0xead6b0, 
    event=0x7fffffffbae0) at MapView.cpp:545
#11 0x00007ffff56e937f in QWidget::event(QEvent*) ()
   from /usr/lib/
#12 0x00000000004f1727 in MapView::event (this=0xead6b0, event=0x7fffffffbae0)
    at MapView.cpp:870
#13 0x00007ffff569901d in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /usr/lib/
#14 0x00007ffff56a17ca in QApplication::notify(QObject*, QEvent*) ()
   from /usr/lib/
#15 0x00007ffff4ea9c9c in QCoreApplication::notifyInternal(QObject*, QEvent*)
    () from /usr/lib/
#16 0x00007ffff56a0a78 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&) ()
   from /usr/lib/
#17 0x00007ffff5709659 in ?? () from /usr/lib/
#18 0x00007ffff570840f in QApplication::x11ProcessEvent(_XEvent*) ()
   from /usr/lib/
#19 0x00007ffff573076c in ?? () from /usr/lib/
#20 0x00007ffff298090e in g_main_context_dispatch () from /lib/
#21 0x00007ffff29842c8 in ?? () from /lib/
#22 0x00007ffff29843f0 in g_main_context_iteration ()
   from /lib/
#23 0x00007ffff4ed239c in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/
#24 0x00007ffff572ff1f in ?? () from /usr/lib/
#25 0x00007ffff4ea8562 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/
#26 0x00007ffff4ea8934 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/
#27 0x00007ffff4eaaba4 in QCoreApplication::exec() ()
   from /usr/lib/
#28 0x000000000051bc11 in main (argc=2, argv=0x7fffffffe4c8) at Main.cpp:208

comment:3 Changed 9 years ago by Chris Browet

Owner: changed from cbro@… to Chris Browet
Status: newassigned

comment:4 Changed 9 years ago by Chris Browet

Resolution: fixed
Status: assignedclosed

(In [20047]) FIX : Stupid Typo (fixes #2726)

Note: See TracTickets for help on using tickets.