Bug 342745 - Marble crashes if I add a node to a polygon.
Summary: Marble crashes if I add a node to a polygon.
Status: RESOLVED WORKSFORME
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: 1.9 (KDE 4.14)
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: marble-bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-01-11 20:05 UTC by Sergey Popov
Modified: 2018-11-30 04:03 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sergey Popov 2015-01-11 20:05:28 UTC
I have added a polygon without nodes. To do it, hold "Return" button when you add a polygon.
Then click at "Add Nodes" button. Marble crashed.

Reproducible: Always

Steps to Reproduce:
1. Go to "Edit Maps" panel. (Settings->Panels->Edit Maps)
2. Add a polygon without nodes. Hold "Return" button at your keyboard to close "Add Polygon" dialog.
3. Click "Add Nodes" button.

Actual Results:  
Marble crashed.


Backtrace:
#0  0x00007ffff57acd27 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#1  0x00007ffff57ae418 in __GI_abort () at abort.c:89
#2  0x00007ffff7967c22 in qt_message_output (msgType=msgType@entry=QtFatalMsg, buf=0x1639b88 "ASSERT: \"!isEmpty()\" in file /usr/include/qt4/QtCore/qvector.h, line 263")
    at global/qglobal.cpp:2386
#3  0x00007ffff7967f89 in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=msgType@entry=QtFatalMsg, 
    msg=msg@entry=0x7ffff7ad38c0 "ASSERT: \"%s\" in file %s, line %d", ap=ap@entry=0x7fffffffb8e8) at global/qglobal.cpp:2432
#4  0x00007ffff7968794 in qFatal (msg=msg@entry=0x7ffff7ad38c0 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2615
#5  0x00007ffff79687d6 in qt_assert (assertion=assertion@entry=0x7ffff6861b64 "!isEmpty()", file=file@entry=0x7ffff6861990 "/usr/include/qt4/QtCore/qvector.h", 
    line=<optimized out>) at global/qglobal.cpp:2060
#6  0x00007ffff659e44c in last (this=0x1495cf0) at /usr/include/qt4/QtCore/qvector.h:263
#7  Marble::GeoDataLineString::last (this=<optimized out>) at /home/sergobot/marble/sources/src/lib/marble/geodata/data/GeoDataLineString.cpp:185
#8  0x00007fffdd471346 in Marble::AreaAnnotation::updateRegions (this=0x113a240, painter=0x7fffffffbfb0)
    at /home/sergobot/marble/sources/src/plugins/render/annotate/AreaAnnotation.cpp:628
#9  0x00007fffdd46e17c in Marble::AreaAnnotation::paint (this=0x113a240, painter=0x7fffffffbfb0, viewport=0x7ee280)
    at /home/sergobot/marble/sources/src/plugins/render/annotate/AreaAnnotation.cpp:71
#10 0x00007fffdd45e1f2 in Marble::AnnotatePlugin::render (this=0x935c00, painter=0x7fffffffbfb0, viewport=0x7ee280, renderPos=..., layer=0x0)
    at /home/sergobot/marble/sources/src/plugins/render/annotate/AnnotatePlugin.cpp:223
#11 0x00007ffff670e8f6 in Marble::LayerManager::renderLayers (this=0x7ee290, painter=painter@entry=0x7fffffffbfb0, viewport=0x7ee280)
    at /home/sergobot/marble/sources/src/lib/marble/LayerManager.cpp:174
#12 0x00007ffff6678b8b in Marble::MarbleMap::paint (this=0x7de248, painter=..., dirtyRect=...) at /home/sergobot/marble/sources/src/lib/marble/MarbleMap.cpp:769
#13 0x00007ffff66608f2 in Marble::MarbleWidget::paintEvent (this=0x7de5f0, evt=<optimized out>) at /home/sergobot/marble/sources/src/lib/marble/MarbleWidget.cpp:733
#14 0x00007ffff6e4ece8 in QWidget::event (this=0x6330, event=0x6330) at kernel/qwidget.cpp:8775
#15 0x00007ffff6dff11c in QApplicationPrivate::notify_helper (this=this@entry=0x6c0170, receiver=receiver@entry=0x7de5f0, e=e@entry=0x7fffffffc370) at kernel/qapplication.cpp:4570
#16 0x00007ffff6e05870 in QApplication::notify (this=0x7fffffffdb80, receiver=0x7de5f0, e=0x7fffffffc370) at kernel/qapplication.cpp:4356
#17 0x00007ffff7a7286d in QCoreApplication::notifyInternal (this=0x7fffffffdb80, receiver=receiver@entry=0x7de5f0, event=event@entry=0x7fffffffc370)
    at kernel/qcoreapplication.cpp:953
#18 0x00007ffff6e497ad in sendSpontaneousEvent (event=0x7fffffffc370, receiver=0x7de5f0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#19 QWidgetPrivate::drawWidget (this=this@entry=0x7d6350, pdev=0xf4df50, rgn=..., offset=..., flags=68, flags@entry=-15264, sharedPainter=sharedPainter@entry=0x0, 
    backingStore=0xf07540) at kernel/qwidget.cpp:5599
#20 0x00007ffff7011088 in QWidgetBackingStore::sync (this=0xf07540) at painting/qbackingstore.cpp:1365
#21 0x00007ffff6e3ea70 in QWidgetPrivate::syncBackingStore (this=0x7346b0) at kernel/qwidget.cpp:1894
#22 0x00007ffff6e4ef00 in QWidget::event (this=0x6330, this@entry=0x734490, event=0x6330, event@entry=0x7fffffffca60) at kernel/qwidget.cpp:8693
#23 0x00007ffff72116f3 in QMainWindow::event (this=0x734490, event=0x7fffffffca60) at widgets/qmainwindow.cpp:1478
#24 0x00007ffff6dff11c in QApplicationPrivate::notify_helper (this=this@entry=0x6c0170, receiver=receiver@entry=0x734490, e=e@entry=0x7fffffffca60) at kernel/qapplication.cpp:4570
#25 0x00007ffff6e05870 in QApplication::notify (this=0x7fffffffdb80, receiver=0x734490, e=0x7fffffffca60) at kernel/qapplication.cpp:4356
#26 0x00007ffff7a7286d in QCoreApplication::notifyInternal (this=0x7fffffffdb80, receiver=receiver@entry=0x734490, event=event@entry=0x7fffffffca60)
    at kernel/qcoreapplication.cpp:953
#27 0x00007ffff7012b1e in sendEvent (event=0x7fffffffca60, receiver=0x734490) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#28 sendUpdateRequest (updateImmediately=true, widget=0x734490) at painting/qbackingstore.cpp:534
#29 QWidgetBackingStore::markDirty (this=0xf07540, rect=..., widget=widget@entry=0x13f84c0, updateImmediately=updateImmediately@entry=true, 
    invalidateBuffer=invalidateBuffer@entry=false) at painting/qbackingstore.cpp:722
#30 0x00007ffff6e3f0a5 in QWidget::repaint (this=0x13f84c0, rect=...) at kernel/qwidget.cpp:10497
#31 0x00007ffff6e3f0e3 in QWidget::repaint (this=this@entry=0x13f84c0) at kernel/qwidget.cpp:10447
#32 0x00007ffff71b9dbd in QAbstractButtonPrivate::click (this=this@entry=0x13f84f0) at widgets/qabstractbutton.cpp:536
#33 0x00007ffff71b9ed4 in QAbstractButton::mouseReleaseEvent (this=0x13f84c0, e=0x7fffffffcf50) at widgets/qabstractbutton.cpp:1123
#34 0x00007ffff727132a in QToolButton::mouseReleaseEvent (this=<optimized out>, e=<optimized out>) at widgets/qtoolbutton.cpp:723
#35 0x00007ffff6e4ece8 in QWidget::event (this=0x6330, event=0x6330) at kernel/qwidget.cpp:8775
#36 0x00007ffff6dff11c in QApplicationPrivate::notify_helper (this=this@entry=0x6c0170, receiver=receiver@entry=0x13f84c0, e=e@entry=0x7fffffffcf50) at kernel/qapplication.cpp:4570
#37 0x00007ffff6e059be in QApplication::notify (this=<optimized out>, receiver=0x13f84c0, e=0x7fffffffcf50) at kernel/qapplication.cpp:4113
#38 0x00007ffff7a7286d in QCoreApplication::notifyInternal (this=0x7fffffffdb80, receiver=receiver@entry=0x13f84c0, event=event@entry=0x7fffffffcf50)
    at kernel/qcoreapplication.cpp:953
#39 0x00007ffff6e0507f in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#40 QApplicationPrivate::sendMouseEvent (receiver=receiver@entry=0x13f84c0, event=event@entry=0x7fffffffcf50, alienWidget=alienWidget@entry=0x13f84c0, 
    nativeWidget=nativeWidget@entry=0x734490, buttonDown=buttonDown@entry=0x7ffff78f3578 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:3178
#41 0x00007ffff6e7abde in QETWidget::translateMouseEvent (this=this@entry=0x734490, event=event@entry=0x7fffffffd2b0) at kernel/qapplication_x11.cpp:4634
#42 0x00007ffff6e7a477 in QApplication::x11ProcessEvent (this=0x7fffffffdb80, event=event@entry=0x7fffffffd2b0) at kernel/qapplication_x11.cpp:3627
#43 0x00007ffff6ea2432 in x11EventSourceDispatch (s=0x6bca90, callback=0x0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:146
#44 0x00007ffff4e75c5d in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007ffff4e75f48 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#46 0x00007ffff4e75ffc in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#47 0x00007ffff7aa0031 in QEventDispatcherGlib::processEvents (this=0x6bc3c0, flags=...) at kernel/qeventdispatcher_glib.cpp:434
#48 0x00007ffff6ea24e6 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#49 0x00007ffff7a714f1 in QEventLoop::processEvents (this=this@entry=0x7fffffffd690, flags=...) at kernel/qeventloop.cpp:149
#50 0x00007ffff7a71805 in QEventLoop::exec (this=this@entry=0x7fffffffd690, flags=...) at kernel/qeventloop.cpp:204
#51 0x00007ffff7a76f67 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1225
#52 0x0000000000425949 in main (argc=2, argv=0x7fffffffdd38) at /home/sergobot/marble/sources/src/apps/marble-qt/qtmain.cpp:258
Comment 1 Andrew Crouthamel 2018-10-31 03:52:52 UTC
Dear Bug Submitter,

This bug has been stagnant for a long time. Could you help us out and re-test if the bug is valid in the latest version? I am setting the status to NEEDSINFO pending your response, please change the Status back to REPORTED when you respond.

Thank you for helping us make KDE software even better for everyone!
Comment 2 Bug Janitor Service 2018-11-15 10:50:40 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 3 Bug Janitor Service 2018-11-30 04:03:20 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!