Bug 273656

Summary: Dolphin crashed while selecting multiple folders
Product: [Applications] dolphin Reporter: Er Galvao Abbott <galvao>
Component: generalAssignee: Peter Penz <peter.penz19>
Status: RESOLVED FIXED    
Severity: crash    
Priority: NOR    
Version: 1.6.1   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 4.7.0
Sentry Crash Report:

Description Er Galvao Abbott 2011-05-19 17:14:19 UTC
Application: dolphin (1.6.1)
KDE Platform Version: 4.6.2 (4.6.2)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-8-generic x86_64
Distribution: Ubuntu 11.04

-- Information about the crash:
- What I was doing when the application crashed: I was selecting multiple folders for deletion (just clicking on the '+' icon on top of each desired folder).

-- Backtrace:
Application: Dolphin (dolphin), signal: Aborted
pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
	in ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S
[Current thread is 1 (Thread 0x7f8107b23780 (LWP 5384))]

Thread 4 (Thread 0x7f80f403c700 (LWP 5385)):
#0  __pthread_mutex_lock (mutex=0x1a75fa8) at pthread_mutex_lock.c:127
#1  0x00007f80ffbb70cb in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f80ffbb7639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f810389e446 in QEventDispatcherGlib::processEvents (this=0x1a32640, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f8103872882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f8103872abc in QEventLoop::exec (this=0x7f80f403bdd0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f8103789924 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#7  0x00007f8103854c2f in QInotifyFileSystemWatcherEngine::run (this=0x1a751c0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f810378c175 in QThreadPrivate::start (arg=0x1a751c0) at thread/qthread_unix.cpp:320
#9  0x00007f8100082d8c in start_thread (arg=0x7f80f403c700) at pthread_create.c:304
#10 0x00007f810742604d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f80f1a13700 (LWP 5389)):
#0  0x00007f8107418f03 in __poll (fds=<value optimized out>, nfds=<value optimized out>, timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f80ffbb7104 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f80ffbb7639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f810389e446 in QEventDispatcherGlib::processEvents (this=0x1d62d50, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007f8103872882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f8103872abc in QEventLoop::exec (this=0x7f80f1a12dd0, flags=...) at kernel/qeventloop.cpp:201
#6  0x00007f8103789924 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#7  0x00007f8103854c2f in QInotifyFileSystemWatcherEngine::run (this=0x1e91d10) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f810378c175 in QThreadPrivate::start (arg=0x1e91d10) at thread/qthread_unix.cpp:320
#9  0x00007f8100082d8c in start_thread (arg=0x7f80f1a13700) at pthread_create.c:304
#10 0x00007f810742604d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f80f1131700 (LWP 5556)):
[KCrash Handler]
#6  0x00007f8107373d05 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007f8107377ab6 in abort () at abort.c:92
#8  0x00007f810736c7c5 in __assert_fail (assertion=0x7f8101859c20 "m_path.size() > m_parent->p->m_path.size()+1", file=<value optimized out>, line=134, function=<value optimized out>) at assert.c:81
#9  0x00007f810180eecf in Strigi::AnalysisResult::Private::Private (this=0x7f80e00f2ac0, p=..., name=<value optimized out>, mt=<value optimized out>, t=..., parent=...) at /build/buildd/strigi-0.7.2/src/streamanalyzer/analysisresult.cpp:134
#10 0x00007f810180ef95 in Strigi::AnalysisResult::AnalysisResult (this=0x7f80e00bc4b0, path=..., name=0x7f80e0057f98 "", mt=1285561408, parent=...) at /build/buildd/strigi-0.7.2/src/streamanalyzer/analysisresult.cpp:140
#11 0x00007f810180f2c2 in Strigi::AnalysisResult::indexChild (this=0x7f80f11309d0, name=<value optimized out>, mt=1285561408, file=0x7f80e00bc410) at /build/buildd/strigi-0.7.2/src/streamanalyzer/analysisresult.cpp:249
#12 0x00007f810184c5a8 in ZipEndAnalyzer::analyze (this=0x7f80e005dcd0, idx=..., in=0x7f80e005cf20) at /build/buildd/strigi-0.7.2/src/streamanalyzer/endanalyzers/zipendanalyzer.cpp:62
#13 0x00007f8101831eca in Strigi::StreamAnalyzerPrivate::analyze (this=0x7f80e0032790, idx=..., input=0x7f80e005cf20) at /build/buildd/strigi-0.7.2/src/streamanalyzer/streamanalyzer.cpp:421
#14 0x00007f81054b67d1 in KFileMetaInfoPrivate::init (this=0x7f80e000ca20, stream=..., url=..., mtime=<value optimized out>, w=<value optimized out>) at ../../kio/kio/kfilemetainfo.cpp:257
#15 0x00007f81054b702f in KFileMetaInfo::KFileMetaInfo (this=0x7f80f1130ce0, path=<value optimized out>, w=...) at ../../kio/kio/kfilemetainfo.cpp:286
#16 0x00007f81055844b6 in KLoadFileMetaDataThread::run (this=0x22b8a50) at ../../kio/kfile/kloadfilemetadatathread.cpp:143
#17 0x00007f810378c175 in QThreadPrivate::start (arg=0x22b8a50) at thread/qthread_unix.cpp:320
#18 0x00007f8100082d8c in start_thread (arg=0x7f80f1131700) at pthread_create.c:304
#19 0x00007f810742604d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#20 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f8107b23780 (LWP 5384)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f810378c82b in wait (this=<value optimized out>, mutex=0x1a753e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0x1a753e0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f810378b910 in QThread::wait (this=<value optimized out>, time=18446744073709551615) at thread/qthread_unix.cpp:722
#4  0x00007f81038485d0 in QFileSystemWatcher::~QFileSystemWatcher (this=0x1a31ec0, __in_chrg=<value optimized out>) at io/qfilesystemwatcher.cpp:446
#5  0x00007f81038486a9 in QFileSystemWatcher::~QFileSystemWatcher (this=0x1a31ec0, __in_chrg=<value optimized out>) at io/qfilesystemwatcher.cpp:462
#6  0x00007f8103885c14 in QObjectPrivate::deleteChildren (this=0x1a75030) at kernel/qobject.cpp:1964
#7  0x00007f810388a5f4 in QObject::~QObject (this=0x1a75270, __in_chrg=<value optimized out>) at kernel/qobject.cpp:946
#8  0x00007f8102f5b7d9 in Solid::Backends::Fstab::FstabWatcher::~FstabWatcher (this=0x1a75270, __in_chrg=<value optimized out>) at ../../../solid/solid/backends/fstab/fstabwatcher.cpp:51
#9  0x00007f8107379961 in __run_exit_handlers (status=1) at exit.c:78
#10 exit (status=1) at exit.c:100
#11 0x00007f810429ed48 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:781
#12 0x00007f8104f50638 in KApplication::xioErrhandler (this=0x7fff09235ac0, dpy=0x19744c0) at ../../kdeui/kernel/kapplication.cpp:419
#13 0x00007f8100f74dee in _XIOError () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#14 0x00007f8100f7262d in _XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#15 0x00007f8100f62f1f in XEventsQueued () from /usr/lib/x86_64-linux-gnu/libX11.so.6
#16 0x00007f81042d9c4c in x11EventSourceCheck (s=0x1956290) at kernel/qguieventdispatcher_glib.cpp:85
#17 0x00007f80ffbb6854 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f80ffbb7122 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f80ffbb7639 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#20 0x00007f810389e3ef in QEventDispatcherGlib::processEvents (this=0x1904db0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#21 0x00007f81042d9dfe in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#22 0x00007f8103872882 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#23 0x00007f8103872abc in QEventLoop::exec (this=0x7fff09235a50, flags=...) at kernel/qeventloop.cpp:201
#24 0x00007f8103876ecb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#25 0x00007f8107716995 in kdemain (argc=6, argv=0x7fff09235fe8) at ../../../dolphin/src/main.cpp:98
#26 0x00007f810735eeff in __libc_start_main (main=0x400730 <main(int, char**)>, argc=6, ubp_av=0x7fff09235fe8, init=<value optimized out>, fini=<value optimized out>, rtld_fini=<value optimized out>, stack_end=0x7fff09235fd8) at libc-start.c:226
#27 0x0000000000400659 in _start ()

Possible duplicates by query: bug 273224, bug 273219, bug 272960, bug 272329, bug 271546.

Reported using DrKonqi
Comment 1 Peter Penz 2011-05-19 17:50:44 UTC
Thanks for the report. This is an issue in the corresponding Strigi analyzer
that Dolphin uses to get the metadata of a file. Dolphin for KDE 4.7 won't
crash anymore in this case (see
http://ppenz.blogspot.com/2011/03/dont-crash-when-reading-metadata.html for
details).