Bug 357079

Summary: Amarok Retrieve metadata from Music Brianz
Product: [Applications] amarok Reporter: Henning Eric Guertler <Henning.Eric.Guertler>
Component: generalAssignee: Amarok Developers <amarok-bugs-dist>
Status: RESOLVED DUPLICATE    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: 2.8.0   
Target Milestone: 2.9   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:

Description Henning Eric Guertler 2015-12-22 23:31:43 UTC
Application: amarok (2.8.0)
KDE Platform Version: 4.14.9 (Compiled from sources)
Qt Version: 4.8.6
Operating System: Linux 3.16.7-29-desktop x86_64
Distribution: "openSUSE 13.2 (Harlequin) (x86_64)"

-- Information about the crash:
When you save the data from Amarok crashes
Amarok PID: 4369 Signal fault (11)

The crash can be reproduced every time.

-- Backtrace:
Application: Amarok (amarok), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
81	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7f1334507800 (LWP 4065))]

Thread 15 (Thread 0x7f13106c7700 (LWP 4068)):
#0  0x00007f133127ac5d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f1328586a41 in  () at /usr/lib64/libpulse.so.0
#2  0x00007f13285782ec in pa_mainloop_poll () at /usr/lib64/libpulse.so.0
#3  0x00007f132857895e in pa_mainloop_iterate () at /usr/lib64/libpulse.so.0
#4  0x00007f1328578a10 in pa_mainloop_run () at /usr/lib64/libpulse.so.0
#5  0x00007f13285869f3 in  () at /usr/lib64/libpulse.so.0
#6  0x00007f1323c60808 in  () at /usr/lib64/pulseaudio/libpulsecommon-5.0.so
#7  0x00007f132f3c20a4 in start_thread (arg=0x7f13106c7700) at pthread_create.c:309
#8  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 14 (Thread 0x7f12f9347700 (LWP 4070)):
#0  0x00007f132f3c6408 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238
#1  0x00007f1302af504a in  () at /usr/lib64/libmysqld.so.18
#2  0x00007f1302b018f7 in  () at /usr/lib64/libmysqld.so.18
#3  0x00007f132f3c20a4 in start_thread (arg=0x7f12f9347700) at pthread_create.c:309
#4  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 13 (Thread 0x7f12f8b46700 (LWP 4071)):
#0  0x00007f132f3c6408 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238
#1  0x00007f13318cec64 in QWaitCondition::wait(QMutex*, unsigned long) (time=60000, this=0x20bb390) at thread/qwaitcondition_unix.cpp:84
#2  0x00007f13318cec64 in QWaitCondition::wait(QMutex*, unsigned long) (this=<optimized out>, mutex=0x1debf18, time=60000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f133359017e in AbstractDirectoryWatcher::run() () at /usr/lib64/libamaroklib.so.1
#4  0x00007f132e4c2542 in ThreadWeaver::JobRunHelper::runTheJob(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=this@entry=0x7f12f8b45da0, th=th@entry=0x160ce00, job=job@entry=0x1debef0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Job.cpp:106
#5  0x00007f132e4c26fe in ThreadWeaver::Job::execute(ThreadWeaver::Thread*) (this=0x1debef0, th=0x160ce00) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Job.cpp:135
#6  0x00007f132e4c1f4b in ThreadWeaver::Thread::run() (this=0x160ce00) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:108
#7  0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x160ce00) at thread/qthread_unix.cpp:349
#8  0x00007f132f3c20a4 in start_thread (arg=0x7f12f8b46700) at pthread_create.c:309
#9  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 12 (Thread 0x7f12f3fff700 (LWP 4072)):
#0  0x00007f132b6d54f9 in g_main_context_query (context=context@entry=0x7f12e80009a0, max_priority=2147483647, timeout=timeout@entry=0x7f12f3ffec6c, fds=fds@entry=0x7f12e8002860, n_fds=n_fds@entry=2) at gmain.c:3539
#1  0x00007f132b6d5b52 in g_main_context_iterate (context=context@entry=0x7f12e80009a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3763
#2  0x00007f132b6d5cec in g_main_context_iteration (context=0x7f12e80009a0, may_block=1) at gmain.c:3842
#3  0x00007f13319fd0de in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f12e80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#4  0x00007f13319cee6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f12f3ffeda0, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f13319cf165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f12f3ffeda0, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f13318cc0bf in QThread::exec() (this=this@entry=0x20fe630) at thread/qthread.cpp:538
#7  0x00007f13319b0783 in QInotifyFileSystemWatcherEngine::run() (this=0x20fe630) at io/qfilesystemwatcher_inotify.cpp:265
#8  0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x20fe630) at thread/qthread_unix.cpp:349
#9  0x00007f132f3c20a4 in start_thread (arg=0x7f12f3fff700) at pthread_create.c:309
#10 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 11 (Thread 0x7f12f37fe700 (LWP 4073)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x2283760) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x2283760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x2283760, previous=0x45e8930) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x2283760) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#7  0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x2283760) at thread/qthread_unix.cpp:349
#8  0x00007f132f3c20a4 in start_thread (arg=0x7f12f37fe700) at pthread_create.c:309
#9  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 10 (Thread 0x7f12f2dec700 (LWP 4074)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x7f12e00098f0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#7  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#9  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#10 0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e00098f0, previous=0x43eb9d0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#11 0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x7f12e00098f0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#12 0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x7f12e00098f0) at thread/qthread_unix.cpp:349
#13 0x00007f132f3c20a4 in start_thread (arg=0x7f12f2dec700) at pthread_create.c:309
#14 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 9 (Thread 0x7f12f25eb700 (LWP 4075)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x7f12e000ef80) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e000ef80, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e000ef80, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e000ef80, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#7  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e000ef80, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e000ef80, previous=0x4606cd0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#9  0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x7f12e000ef80) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#10 0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x7f12e000ef80) at thread/qthread_unix.cpp:349
#11 0x00007f132f3c20a4 in start_thread (arg=0x7f12f25eb700) at pthread_create.c:309
#12 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 8 (Thread 0x7f12f1dea700 (LWP 4076)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x7f12e0020020) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0020020, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0020020, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0020020, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#7  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0020020, previous=0x45ef410) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x7f12e0020020) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#9  0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x7f12e0020020) at thread/qthread_unix.cpp:349
#10 0x00007f132f3c20a4 in start_thread (arg=0x7f12f1dea700) at pthread_create.c:309
#11 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 7 (Thread 0x7f12f15e9700 (LWP 4077)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x7f12e0021440) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#7  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#9  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#10 0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0021440, previous=0x43efda0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#11 0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x7f12e0021440) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#12 0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x7f12e0021440) at thread/qthread_unix.cpp:349
#13 0x00007f132f3c20a4 in start_thread (arg=0x7f12f15e9700) at pthread_create.c:309
#14 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 6 (Thread 0x7f12f0de8700 (LWP 4078)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x7f12e0022760) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#6  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#7  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#8  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#9  0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x0) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#10 0x00007f132e4c31ac in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0022760, previous=0x43e9e70) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:71
#11 0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x7f12e0022760) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#12 0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x7f12e0022760) at thread/qthread_unix.cpp:349
#13 0x00007f132f3c20a4 in start_thread (arg=0x7f12f0de8700) at pthread_create.c:309
#14 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 5 (Thread 0x7f12d5f0d700 (LWP 4079)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (time=18446744073709551615, this=0x20c07f0) at thread/qwaitcondition_unix.cpp:86
#2  0x00007f13318cec86 in QWaitCondition::wait(QMutex*, unsigned long) (this=this@entry=0x20f7c58, mutex=0x1725a80, time=time@entry=18446744073709551615) at thread/qwaitcondition_unix.cpp:158
#3  0x00007f132e4c06fc in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned(ThreadWeaver::Thread*) (this=0x20f7c30, th=0x7f12e0023b80) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WeaverImpl.cpp:370
#4  0x00007f132e4c3193 in ThreadWeaver::WorkingHardState::applyForWork(ThreadWeaver::Thread*, ThreadWeaver::Job*) (this=0x1ab9600, th=0x7f12e0023b80, previous=0x45ce950) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/WorkingHardState.cpp:68
#5  0x00007f132e4c1eaf in ThreadWeaver::Thread::run() (this=0x7f12e0023b80) at /usr/src/debug/kdelibs-4.14.9/threadweaver/Weaver/Thread.cpp:98
#6  0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x7f12e0023b80) at thread/qthread_unix.cpp:349
#7  0x00007f132f3c20a4 in start_thread (arg=0x7f12d5f0d700) at pthread_create.c:309
#8  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 4 (Thread 0x7f12d5256700 (LWP 4080)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f1327868686 in WTF::TCMalloc_PageHeap::scavengerThread() () at /usr/lib64/libQtWebKit.so.4
#2  0x00007f13278686b9 in  () at /usr/lib64/libQtWebKit.so.4
#3  0x00007f132f3c20a4 in start_thread (arg=0x7f12d5256700) at pthread_create.c:309
#4  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 3 (Thread 0x7f127efc1700 (LWP 4083)):
#0  0x00007f133127ac5d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f132b6d5be4 in g_main_context_iterate (priority=2147483647, n_fds=1, fds=0x7f12700013e0, timeout=4757, context=0x7f12700009a0) at gmain.c:4076
#2  0x00007f132b6d5be4 in g_main_context_iterate (context=context@entry=0x7f12700009a0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3776
#3  0x00007f132b6d5cec in g_main_context_iteration (context=0x7f12700009a0, may_block=1) at gmain.c:3842
#4  0x00007f13319fd0de in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f12700008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#5  0x00007f13319cee6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f127efc0de0, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f13319cf165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f127efc0de0, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f13318cc0bf in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:538
#8  0x00007f13318ce79f in QThreadPrivate::start(void*) (arg=0x29a7060) at thread/qthread_unix.cpp:349
#9  0x00007f132f3c20a4 in start_thread (arg=0x7f127efc1700) at pthread_create.c:309
#10 0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 2 (Thread 0x7f127e140700 (LWP 4084)):
#0  0x00007f132f3c605f in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f132d5108cb in QTWTF::TCMalloc_PageHeap::scavengerThread() (this=0x7f132d80ef00 <QTWTF::pageheap_memory>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00007f132d510909 in QTWTF::TCMalloc_PageHeap::runScavengerThread(void*) (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x00007f132f3c20a4 in start_thread (arg=0x7f127e140700) at pthread_create.c:309
#4  0x00007f133128308d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 1 (Thread 0x7f1334507800 (LWP 4065)):
[KCrash Handler]
#6  0x00007f13318ca611 in QReadWriteLock::lockForRead() (this=0x38) at thread/qreadwritelock.cpp:149
#7  0x00007f13337043b0 in  () at /usr/lib64/libamaroklib.so.1
#8  0x00007f133370a06c in  () at /usr/lib64/libamaroklib.so.1
#9  0x00007f13324855fb in QSortFilterProxyModel::flags(QModelIndex const&) const (this=<optimized out>, index=...) at itemviews/qsortfilterproxymodel.cpp:2003
#10 0x00007f1332445471 in QTreeView::drawRow(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const (this=0x4502250, painter=0x7ffe0ab4c6f0, option=..., index=...) at itemviews/qtreeview.cpp:1638
#11 0x00007f1332448562 in QTreeView::drawTree(QPainter*, QRegion const&) const (this=this@entry=0x4502250, painter=painter@entry=0x7ffe0ab4c6f0, region=...) at itemviews/qtreeview.cpp:1445
#12 0x00007f133244bd0c in QTreeView::paintEvent(QPaintEvent*) (this=0x4502250, event=0x7ffe0ab4ce30) at itemviews/qtreeview.cpp:1270
#13 0x00007f1331f649f0 in QWidget::event(QEvent*) (this=this@entry=0x4502250, event=event@entry=0x7ffe0ab4ce30) at kernel/qwidget.cpp:8546
#14 0x00007f13323015ee in QFrame::event(QEvent*) (this=0x4502250, e=0x7ffe0ab4ce30) at widgets/qframe.cpp:557
#15 0x00007f1332410e13 in QAbstractItemView::viewportEvent(QEvent*) (this=this@entry=0x4502250, event=event@entry=0x7ffe0ab4ce30) at itemviews/qabstractitemview.cpp:1644
#16 0x00007f133244f9c0 in QTreeView::viewportEvent(QEvent*) (this=0x4502250, event=0x7ffe0ab4ce30) at itemviews/qtreeview.cpp:1252
#17 0x00007f13319d0416 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) (this=this@entry=0x14d4bb0, receiver=receiver@entry=0x4501cf0, event=event@entry=0x7ffe0ab4ce30) at kernel/qcoreapplication.cpp:1063
#18 0x00007f1331f1574c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x14d4bb0, receiver=receiver@entry=0x4501cf0, e=e@entry=0x7ffe0ab4ce30) at kernel/qapplication.cpp:4561
#19 0x00007f1331f1bcad in QApplication::notify(QObject*, QEvent*) (this=this@entry=0x7ffe0ab4e780, receiver=receiver@entry=0x4501cf0, e=e@entry=0x7ffe0ab4ce30) at kernel/qapplication.cpp:4351
#20 0x00007f1333f76e0a in KApplication::notify(QObject*, QEvent*) (this=0x7ffe0ab4e780, receiver=0x4501cf0, event=0x7ffe0ab4ce30) at /usr/src/debug/kdelibs-4.14.9/kdeui/kernel/kapplication.cpp:311
#21 0x00007f13319d02ad in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffe0ab4e780, receiver=receiver@entry=0x4501cf0, event=event@entry=0x7ffe0ab4ce30) at kernel/qcoreapplication.cpp:953
#22 0x00007f1331f5f111 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (event=0x7ffe0ab4ce30, receiver=0x4501cf0) at ../../src/corelib/kernel/qcoreapplication.h:234
#23 0x00007f1331f5f111 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4509310, pdev=pdev@entry=0x45048d0, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5599
#24 0x00007f1331f5fb40 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, siblings=..., index=<optimized out>, index@entry=3, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5808
#25 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, siblings=..., index=3, index@entry=4, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#26 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, siblings=..., index=4, index@entry=5, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#27 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, siblings=..., index=5, index@entry=6, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#28 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, siblings=..., index=6, index@entry=7, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#29 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, siblings=..., index=7, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#30 0x00007f1331f5eccc in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4508e80, pdev=pdev@entry=0x45048d0, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5652
#31 0x00007f1331f5fb40 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4501e30, pdev=pdev@entry=0x45048d0, siblings=..., index=<optimized out>, index@entry=2, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5808
#32 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4501e30, pdev=pdev@entry=0x45048d0, siblings=..., index=2, index@entry=3, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#33 0x00007f1331f5f9af in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4501e30, pdev=pdev@entry=0x45048d0, siblings=..., index=3, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5795
#34 0x00007f1331f5eccc in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4501e30, pdev=pdev@entry=0x45048d0, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5652
#35 0x00007f1331f5fb40 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=this@entry=0x4505010, pdev=pdev@entry=0x45048d0, siblings=..., index=<optimized out>, rgn=..., offset=..., flags=flags@entry=4, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5808
#36 0x00007f1331f5eccc in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) (this=0x4505010, pdev=0x45048d0, rgn=..., offset=..., flags=flags@entry=5, sharedPainter=sharedPainter@entry=0x0, backingStore=backingStore@entry=0x4503770) at kernel/qwidget.cpp:5652
#37 0x00007f133211dcce in QWidgetBackingStore::sync() (this=0x4503770) at painting/qbackingstore.cpp:1373
#38 0x00007f1331f545c0 in QWidgetPrivate::syncBackingStore() (this=this@entry=0x4505010) at kernel/qwidget.cpp:1894
#39 0x00007f1331f6456a in QWidget::event(QEvent*) (this=0x44e2850, event=0x45cccd0) at kernel/qwidget.cpp:8693
#40 0x00007f1331f1576c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x14d4bb0, receiver=receiver@entry=0x44e2850, e=e@entry=0x45cccd0) at kernel/qapplication.cpp:4565
#41 0x00007f1331f1bcad in QApplication::notify(QObject*, QEvent*) (this=this@entry=0x7ffe0ab4e780, receiver=receiver@entry=0x44e2850, e=e@entry=0x45cccd0) at kernel/qapplication.cpp:4351
#42 0x00007f1333f76e0a in KApplication::notify(QObject*, QEvent*) (this=0x7ffe0ab4e780, receiver=0x44e2850, event=0x45cccd0) at /usr/src/debug/kdelibs-4.14.9/kdeui/kernel/kapplication.cpp:311
#43 0x00007f13319d02ad in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffe0ab4e780, receiver=receiver@entry=0x44e2850, event=event@entry=0x45cccd0) at kernel/qcoreapplication.cpp:953
#44 0x00007f13319d357d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (event=0x45cccd0, receiver=0x44e2850) at kernel/qcoreapplication.h:231
#45 0x00007f13319d357d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x138e650) at kernel/qcoreapplication.cpp:1577
#46 0x00007f13319d3a23 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1470
#47 0x00007f13319fd8fe in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) () at kernel/qcoreapplication.h:236
#48 0x00007f13319fd8fe in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x14cf800) at kernel/qeventdispatcher_glib.cpp:300
#49 0x00007f132b6d5a04 in g_main_context_dispatch (context=0x14d4f00) at gmain.c:3111
#50 0x00007f132b6d5a04 in g_main_context_dispatch (context=context@entry=0x14d4f00) at gmain.c:3710
#51 0x00007f132b6d5c48 in g_main_context_iterate (context=context@entry=0x14d4f00, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3781
#52 0x00007f132b6d5cec in g_main_context_iteration (context=0x14d4f00, may_block=1) at gmain.c:3842
#53 0x00007f13319fd0be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x1393ef0, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#54 0x00007f1331fb2676 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#55 0x00007f13319cee6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe0ab4e650, flags=...) at kernel/qeventloop.cpp:149
#56 0x00007f13319cf165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe0ab4e650, flags=...) at kernel/qeventloop.cpp:204
#57 0x00007f13319d45b9 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1225
#58 0x0000000000407fb3 in  ()
#59 0x00007f13311bfb05 in __libc_start_main (main=0x401a40, argc=1, argv=0x7ffe0ab4e8e8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffe0ab4e8d8) at libc-start.c:285
#60 0x00000000004080d2 in _start ()

Reported using DrKonqi
Comment 1 Myriam Schweingruber 2015-12-23 02:43:17 UTC
Unfortunately your backtrace has no debugging symbols which makes it rather useless. Please install those and provide a new backtrace. See also https://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports#openSUSE

FWIW: this is very likely a duplicate of bug #328359
Comment 2 Myriam Schweingruber 2016-02-10 18:52:30 UTC

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