Bug 194750 - Marble widget crash on start
Summary: Marble widget crash on start
Status: RESOLVED DUPLICATE of bug 218873
Alias: None
Product: marble
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Unlisted Binaries Linux
: NOR crash
Target Milestone: ---
Assignee: Torsten Rahn
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-05-31 14:10 UTC by miki
Modified: 2018-08-27 17:13 UTC (History)
5 users (show)

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 miki 2009-05-31 14:10:55 UTC
Application that crashed: digikam
Version of the application: 1.0.0-beta1 (rev.: 975833)
KDE Version: 4.2.88 (KDE 4.2.88 (KDE 4.3 >= 20090527))
Qt Version: 4.5.1
Operating System: Linux 2.6.29-ARCH x86_64

What I was doing when the application crashed:
digikam crash on start

 -- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
[Current thread is 0 (LWP 22055)]

Thread 13 (Thread 0x7fd17ad27910 (LWP 22131)):
#0  0x00007fd18a1b1e99 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fd18a422c59 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#2  0x00000000006b197b in ?? ()
#3  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#5  0x00007fd189777c3d in clone () from /lib/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 12 (Thread 0x7fd17a2d6910 (LWP 22135)):
#0  0x00007fd18976f543 in poll () from /lib/libc.so.6
#1  0x00007fd186d929f2 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#2  0x00007fd186d92d6c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007fd18a533a2e in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a508c42 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#5  0x00007fd18a50900d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#6  0x00007fd18a41ed08 in QThread::exec () from /usr/lib/libQtCore.so.4
#7  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#8  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#9  0x00007fd189777c3d in clone () from /lib/libc.so.6
#10 0x0000000000000000 in ?? ()

Thread 11 (Thread 0x7fd179ad5910 (LWP 22136)):
#0  0x00007fd186d8de47 in g_main_context_query () from /usr/lib/libglib-2.0.so.0
#1  0x00007fd186d928b9 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#2  0x00007fd186d92d6c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007fd18a533a2e in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a508c42 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#5  0x00007fd18a50900d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#6  0x00007fd18a41ed08 in QThread::exec () from /usr/lib/libQtCore.so.4
#7  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#8  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#9  0x00007fd189777c3d in clone () from /lib/libc.so.6
#10 0x0000000000000000 in ?? ()

Thread 10 (Thread 0x7fd1792d4910 (LWP 22137)):
#0  0x00007fd18a1b1e99 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fd18a422c59 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#2  0x00007fd18ddbbf12 in Digikam::LoadSaveThread::run () from /usr/lib/libdigikamcore.so.1
#3  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#5  0x00007fd189777c3d in clone () from /lib/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 9 (Thread 0x7fd178ad3910 (LWP 22138)):
#0  0x00007fd18a1b1e99 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fd18a422c59 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#2  0x00007fd18ddbbf12 in Digikam::LoadSaveThread::run () from /usr/lib/libdigikamcore.so.1
#3  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#5  0x00007fd189777c3d in clone () from /lib/libc.so.6
#6  0x0000000000000000 in ?? ()

Thread 8 (Thread 0x7fd1714bf910 (LWP 22139)):
#0  0x00007fd18a1b211d in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fd1765b6731 in metronom_sync_loop () from /usr/lib/libxine.so.1
#2  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#3  0x00007fd189777c3d in clone () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7fd16fa4c910 (LWP 22140)):
#0  0x00007fd189771422 in select () from /lib/libc.so.6
#1  0x00007fd1765de825 in xine_usec_sleep () from /usr/lib/libxine.so.1
#2  0x00007fd1765c41e7 in video_out_loop () from /usr/lib/libxine.so.1
#3  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#4  0x00007fd189777c3d in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7fd16f24b910 (LWP 22141)):
#0  0x00007fd18976f543 in poll () from /lib/libc.so.6
#1  0x00007fd186d929f2 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#2  0x00007fd186d92d6c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007fd18a533a2e in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a508c42 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#5  0x00007fd18a50900d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#6  0x00007fd18a41ed08 in QThread::exec () from /usr/lib/libQtCore.so.4
#7  0x00007fd17680fb54 in Phonon::Xine::XineThread::run () from /usr/lib/kde4/plugins/phonon_backend/phonon_xine.so
#8  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#9  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#10 0x00007fd189777c3d in clone () from /lib/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fd16e841910 (LWP 22144)):
#0  0x00007fd16e847ba0 in ao_alsa_handle_event_thread () from /usr/lib/xine/plugins/1.25/xineplug_ao_out_alsa.so
#1  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#2  0x00007fd189777c3d in clone () from /lib/libc.so.6
#3  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fd16e040910 (LWP 22145)):
#0  0x00007fd18a1b1e99 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fd1765c72db in ao_loop () from /usr/lib/libxine.so.1
#2  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#3  0x00007fd189777c3d in clone () from /lib/libc.so.6
#4  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fd16b96b910 (LWP 22155)):
#0  0x00007fd18976f543 in poll () from /lib/libc.so.6
#1  0x00007fd186d929f2 in g_main_context_iterate () from /usr/lib/libglib-2.0.so.0
#2  0x00007fd186d92d6c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#3  0x00007fd18a533a2e in QEventDispatcherGlib::processEvents () from /usr/lib/libQtCore.so.4
#4  0x00007fd18a508c42 in QEventLoop::processEvents () from /usr/lib/libQtCore.so.4
#5  0x00007fd18a50900d in QEventLoop::exec () from /usr/lib/libQtCore.so.4
#6  0x00007fd18a41ed08 in QThread::exec () from /usr/lib/libQtCore.so.4
#7  0x00007fd16ce276bd in Marble::GpsdThread::run (this=0x33e1470) at /home/miki/work1/kdemod-core42/work/kdeedu/src/kdeedu-4.2.88/marble/src/plugins/positionprovider/gpsd/GpsdThread.cpp:27
#8  0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#9  0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#10 0x00007fd189777c3d in clone () from /lib/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fd16b113910 (LWP 22156)):
[KCrash Handler]
#5  0x00007fd18971c9a1 in mem2chunk_check () from /lib/libc.so.6
#6  0x00007fd18971e6e0 in free_check () from /lib/libc.so.6
#7  0x00007fd18d316553 in ~GeoDataObject (this=0x7fd16a902320) at /home/miki/work1/kdemod-core42/work/kdeedu/src/kdeedu-4.2.88/marble/src/lib/geodata/data/GeoDataObject.cpp:54
#8  0x00007fd18d31a29d in QVector<Marble::GeoDataPlacemark>::realloc (this=0x384cfb0, asize=0, aalloc=<value optimized out>) at /usr/include/QtCore/qvector.h:423
#9  0x00007fd18d31a410 in QVector<Marble::GeoDataPlacemark>::append (this=0x384cfb0, t=<value optimized out>) at /usr/include/QtCore/qvector.h:525
#10 0x00007fd18d3b246f in Marble::PlacemarkLoader::loadFile (this=0x3aa7ac0, filename=<value optimized out>, placemarkContainer=0x384cfb0)
    at /home/miki/work1/kdemod-core42/work/kdeedu/src/kdeedu-4.2.88/marble/src/lib/PlacemarkLoader.cpp:317
#11 0x00007fd18d3b2b8d in Marble::PlacemarkLoader::run (this=0x3aa7ac0) at /home/miki/work1/kdemod-core42/work/kdeedu/src/kdeedu-4.2.88/marble/src/lib/PlacemarkLoader.cpp:112
#12 0x00007fd18a421c62 in ?? () from /usr/lib/libQtCore.so.4
#13 0x00007fd18a1ad59a in start_thread () from /lib/libpthread.so.0
#14 0x00007fd189777c3d in clone () from /lib/libc.so.6
#15 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fd190a9f760 (LWP 22055)):
#0  0x00007fd18a1b211d in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007fd18a4216b5 in ?? () from /usr/lib/libQtCore.so.4
#2  0x00007fd18a42180e in QThread::msleep () from /usr/lib/libQtCore.so.4
#3  0x00007fd176828572 in Phonon::Xine::Backend::~Backend () from /usr/lib/kde4/plugins/phonon_backend/phonon_xine.so
#4  0x00007fd19047dd2f in Phonon::FactoryPrivate::~FactoryPrivate () from /usr/lib/libphonon.so.4
#5  0x00007fd1896dfe12 in __run_exit_handlers () from /lib/libc.so.6
#6  0x00007fd1896dfe75 in exit () from /lib/libc.so.6
#7  0x00007fd18b0f8b68 in ?? () from /usr/lib/libQtGui.so.4
#8  0x00007fd18c4d7978 in KApplication::xioErrhandler (this=0x7fff98afb8e0, dpy=0x18a2b30) at /home/miki/work1/kdemod-core42/work/kdelibs/src/kdelibs-4.2.88/kdeui/kernel/kapplication.cpp:408
#9  0x00007fd1884f053e in _XIOError () from /usr/lib/libX11.so.6
#10 0x00007fd1884f783f in process_responses () from /usr/lib/libX11.so.6
#11 0x00007fd1884f8177 in _XEventsQueued () from /usr/lib/libX11.so.6
#12 0x00007fd1884d001a in XFlush () from /usr/lib/libX11.so.6
#13 0x00007fd18b0ebbb1 in QWidget::setCursor () from /usr/lib/libQtGui.so.4
#14 0x00007fd18b49638a in ?? () from /usr/lib/libQtGui.so.4
#15 0x00007fd18b49f908 in QLineEdit::QLineEdit () from /usr/lib/libQtGui.so.4
#16 0x00007fd18b446437 in ?? () from /usr/lib/libQtGui.so.4
#17 0x00007fd18b446672 in QAbstractSpinBox::QAbstractSpinBox () from /usr/lib/libQtGui.so.4
#18 0x00007fd18b467dec in QDateTimeEdit::QDateTimeEdit () from /usr/lib/libQtGui.so.4
#19 0x00007fd18b4680f4 in QTimeEdit::QTimeEdit () from /usr/lib/libQtGui.so.4
#20 0x00000000006a06ac in ?? ()
#21 0x0000000000487511 in _start ()

Reported using DrKonqi
Comment 1 Christoph Feck 2009-06-01 01:27:48 UTC
Another XIOError. I hate KGLOBAL_STATIC destructors called for XIO errors, because people would think the bug is elsewhere. See also my comment in bug 178844.
Comment 2 Torsten Rahn 2009-06-01 10:38:05 UTC
Christoph: So where do you suggest that the bug is? 
miki: Does it crash reproducably on every startup? If so, are you using Marble 0.8SVN together with normal digikam packages or have you recompiled digikam in order to work well with Marble? Any digikam packages that were made against KDE 4.2 will only work well with Marble 0.7.x.
Comment 3 Christoph Feck 2009-06-01 16:22:32 UTC
The bug is either in Qt or in X11. Look at frame entry #9, that error causes the application to exit(). Many classes, however, are not prepared that static destructors are called without the proper cleanup from QObject first. Also, the order those destructors are called is not changable.

There should be a way to exit a process without calling static destructors, I know that AmigaOS had both an exit() and an immediate _exit() entry, not sure about POSIX...
Comment 4 Pino Toscano 2009-06-01 18:01:26 UTC
(In reply to comment #3)
> The bug is either in Qt or in X11. Look at frame entry #9, that error causes
> the application to exit().

This is not the cause, but just a consequence.
The real problem is thread #1 crashing, most probably trying to delete some invalid memory (double deletion or uninitialized memory); thread #1 (with the X event handling) goes bersek just because of that.
Comment 5 miki 2009-06-04 16:15:21 UTC
still crash with last trunk r-977494
Comment 6 Torsten Rahn 2009-06-04 16:23:34 UTC
Ok, if thread #1 is the culprit then why did this bug get assigned to Marble? By looking at the classes involved with thread 1 I'd rather say that this is a digikam bug ...
Comment 7 Michael Pyne 2009-09-15 04:34:22 UTC
It seems to me that the crash was from Thread 2 (where [KCrash Handler] is seen.  This correlates well with mem2chunk_check() catching some kind of memory corruption.  Marble::PlacemarkLoader::loadFile() was running in this thread right before the crash, which I suppose is why the crash was assigned to Marble.
Comment 8 Dennis Nienhüser 2010-01-16 01:46:56 UTC
Looks like the same problem as https://bugs.kde.org/show_bug.cgi?id=218873#c8

Please reopen if it is still happening.

*** This bug has been marked as a duplicate of bug 218873 ***