Version: unspecified OS: Linux PositionMarker::setPosition() is called before PositionMarker::render() is called, such that m_viewport == 0x0. Thread 1 (Thread 0xb4fb2710 (LWP 22824)): #0 Marble::ViewportParams::viewLatLonAltBox (this=0x0) at /home/shentey/Projekte/marble/src/src/lib/ViewportParams.cpp:319 No locals. #1 0xb1ac2547 in Marble::PositionMarker::setPosition (this=0x83204c0, position=...) at /home/shentey/Projekte/marble/src/src/plugins/render/positionmarker/PositionMarker.cpp:417 No locals. #2 0xb1ac673b in Marble::PositionMarker::qt_metacall (this=0x83204c0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfffea74) at /home/shentey/Projekte/marble/build-qt/src/plugins/render/positionmarker/PositionMarker.moc:87 No locals. #3 0xb7e80eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #4 0xb7e8fdda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #5 0xb6fe6fad in Marble::PositionTracking::gpsLocation (this=0x81decec, _t1=..., _t2=0) at /home/shentey/Projekte/marble/build-qt/src/lib/PositionTracking.moc:137 _a = {0x0, 0xbfffeab8, 0xbfffea68} #6 0xb6fe8544 in Marble::PositionTracking::qt_metacall (this=0x81decec, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0xbfffebb4) at /home/shentey/Projekte/marble/build-qt/src/lib/PositionTracking.moc:92 No locals. #7 0xb7e80eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #8 0xb7e8fdda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #9 0xb6fe762d in Marble::PositionTrackingPrivate::gpsLocation (this=0x8114a00, _t1=..., _t2=0) at /home/shentey/Projekte/marble/build-qt/src/lib/PositionTracking_p.moc:97 _a = {0x0, 0xbfffec08, 0xbfffeba8} #10 0xb6fe7796 in Marble::PositionTrackingPrivate::setPosition (this=0x8114a00, position=..., accuracy=...) at /home/shentey/Projekte/marble/src/src/lib/PositionTracking.cpp:55 speed = <optimized out> placemark = <optimized out> #11 0xb6fe7a10 in Marble::PositionTrackingPrivate::qt_metacall (this=0x8114a00, _c=QMetaObject::InvokeMetaMethod, _id=2, _a=0xbfffed54) at /home/shentey/Projekte/marble/build-qt/src/lib/PositionTracking_p.moc:84 No locals. #12 0xb7e80eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #13 0xb7e8fdda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #14 0xb6ff2c6d in Marble::PositionProviderPlugin::positionChanged (this=0x8a87ce8, _t1=..., _t2=...) at /home/shentey/Projekte/marble/build-qt/src/lib/PositionProviderPlugin.moc:98 _a = {0x0, 0xbfffeda8, 0xbfffed78} #15 0xb3a4b2a8 in Marble::FileReaderPositionProviderPlugin::update (this=0x8a87ce8) at /home/shentey/Projekte/marble/src/src/plugins/positionprovider/filereader/FileReaderPositionProviderPlugin.cpp:223 No locals. #16 0xb3a4b366 in Marble::FileReaderPositionProviderPlugin::qt_metacall (this=0x8a87ce8, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfffee74) at /home/shentey/Projekte/marble/build-qt/src/plugins/positionprovider/filereader/FileReaderPositionProviderPlugin.moc:75 No locals. #17 0xb7e80eed in QMetaObject::metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #18 0xb7e8fdda in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4 No symbol table info available. #19 0xb7e976e5 in ?? () from /usr/lib/libQtCore.so.4 No symbol table info available. #20 0xb7e9779c in ?? () from /usr/lib/libQtCore.so.4 No symbol table info available. #21 0xb7e92d04 in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4 No symbol table info available. #22 0xb73c0a24 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 No symbol table info available. #23 0xb73c5dd3 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4 No symbol table info available. #24 0xb7e7ab2e in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4 No symbol table info available. #25 0xb7eaaf70 in ?? () from /usr/lib/libQtCore.so.4 No symbol table info available. #26 0xb7ea8492 in ?? () from /usr/lib/libQtCore.so.4 No symbol table info available. #27 0xb69d401f in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #28 0xb69d4750 in ?? () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #29 0xb69d49ea in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 No symbol table info available. #30 0xb7ea8e4a in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 No symbol table info available. #31 0xb7473f8a in ?? () from /usr/lib/libQtGui.so.4 No symbol table info available. #32 0xb7e79b6d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 No symbol table info available. #33 0xb7e79db1 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4 No symbol table info available. #34 0xb7e7e50d in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4 No symbol table info available. #35 0xb73be894 in QApplication::exec() () from /usr/lib/libQtGui.so.4 No symbol table info available. #36 0x08059630 in main (argc=134884544, argv=0x80a2cc0) at /home/shentey/Projekte/marble/src/src/qtmain.cpp:260 Reproducible: Always Steps to Reproduce: 1) create a route 2) activate the FileReaderPositionProviderPlugin 3) restart Marble Actual Results: Marble crashes Expected Results: Marble shouldn't crash Seems only to happen in the Qt-only version.
Git commit 836fb716857f5868e9adaa3e48fe2df9bbf50e52 by Bernhard Beschow. Committed on 16/11/2011 at 20:12. Pushed by beschow into branch 'master'. PositionMarker: don't get a hold on ViewportParams BUG: 286799 M +12 -17 src/plugins/render/positionmarker/PositionMarker.cpp M +3 -2 src/plugins/render/positionmarker/PositionMarker.h http://commits.kde.org/marble/836fb716857f5868e9adaa3e48fe2df9bbf50e52