Kdenlive   bug tracker Home page

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002487KdenliveUser Interfacepublic2012-01-17 13:112012-05-15 10:58
Reportertmcguire 
Assigned Toj-b-m 
PrioritynormalSeveritycrashReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product VersionRecent git 
Target VersionFixed in Version0.9 
Summary0002487: Crash after adding a clip
DescriptionEach time I add a clip to the project, kdenlive crashes.
Steps To Reproduce1. Start kdenlive
2. Click Project->Add Clip
3. Select file (in my case a mp4 file)
4. A dialog pops up asking me to change the profile because the clip does not
   match the project's profile. Click "Cancel"
5. Crash
Additional InformationThe machine has 8 cores (might be relevant since the crash is in QMutex).

This is the backtrace:
Application: Kdenlive (kdenlive), signal: Aborted
[Current thread is 1 (Thread 0x7fe322b7a760 (LWP 4573))]

Thread 6 (Thread 0x7fe2fd043700 (LWP 4578)):
#0 0x00007fe31b9f7503 in poll () from /lib64/libc.so.6
#1 0x00007fe318af1114 in ?? () from /lib64/libglib-2.0.so.0
0000002 0x00007fe318af1650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
0000003 0x00007fe31f209ca6 in QEventDispatcherGlib::processEvents (this=0x164ad00, flags=...) at kernel/qeventdispatcher_glib.cpp:424
0000004 0x00007fe31f1cd942 in QEventLoop::processEvents (this=0x7fe2fd042d90, flags=...) at kernel/qeventloop.cpp:149
0000005 0x00007fe31f1cda96 in QEventLoop::exec (this=0x7fe2fd042d90, flags=...) at kernel/qeventloop.cpp:201
0000006 0x00007fe31f0b0b8d in QThread::exec (this=0x273ff00) at thread/qthread.cpp:498
0000007 0x00007fe31f1ac344 in QInotifyFileSystemWatcherEngine::run (this=0x273ff00) at io/qfilesystemwatcher_inotify.cpp:248
0000008 0x00007fe31f0b3401 in QThreadPrivate::start (arg=0x273ff00) at thread/qthread_unix.cpp:331
0000009 0x00007fe31edfea3f in start_thread () from /lib64/libpthread.so.0
0000010 0x00007fe31ba0067d in clone () from /lib64/libc.so.6
0000011 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7fe2ffc82700 (LWP 4586)):
#0 0x00007fe31ee036f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1 0x00007fe31ebe8e80 in mlt_consumer_get_frame () from /usr/lib64/libmlt.so.4
0000002 0x00007fe31ebe974e in mlt_consumer_rt_frame () from /usr/lib64/libmlt.so.4
0000003 0x00007fe30afa5d70 in ?? () from /usr/lib64/mlt/libmltsdl.so
0000004 0x00007fe31edfea3f in start_thread () from /lib64/libpthread.so.0
0000005 0x00007fe31ba0067d in clone () from /lib64/libc.so.6
0000006 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7fe2ff481700 (LWP 4587)):
#0 0x00007fe31ee0338c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1 0x00007fe30afa55c1 in ?? () from /usr/lib64/mlt/libmltsdl.so
0000002 0x00007fe31edfea3f in start_thread () from /lib64/libpthread.so.0
0000003 0x00007fe31ba0067d in clone () from /lib64/libc.so.6
0000004 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7fe2fc842700 (LWP 4590)):
#0 0x00007fe31ee036f9 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1 0x00007fe31ebe8e80 in mlt_consumer_get_frame () from /usr/lib64/libmlt.so.4
0000002 0x00007fe31ebe974e in mlt_consumer_rt_frame () from /usr/lib64/libmlt.so.4
0000003 0x00007fe30afa5d70 in ?? () from /usr/lib64/mlt/libmltsdl.so
0000004 0x00007fe31edfea3f in start_thread () from /lib64/libpthread.so.0
0000005 0x00007fe31ba0067d in clone () from /lib64/libc.so.6
0000006 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fe2f738c700 (LWP 4591)):
#0 0x00007fe31ee0338c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1 0x00007fe30afa55c1 in ?? () from /usr/lib64/mlt/libmltsdl.so
0000002 0x00007fe31edfea3f in start_thread () from /lib64/libpthread.so.0
0000003 0x00007fe31ba0067d in clone () from /lib64/libc.so.6
0000004 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fe322b7a760 (LWP 4573)):
[KCrash Handler]
0000006 0x00007fe31b95fab5 in raise () from /lib64/libc.so.6
0000007 0x00007fe31b960fb6 in abort () from /lib64/libc.so.6
0000008 0x00007fe31f0a6234 in qt_message_output (msgType=QtFatalMsg, buf=0x7fe2f836fe88 "ASSERT failure in QMutex::unlock(): \"A mutex must be unlocked in the same thread that locked it.\", file thread/qmutex.cpp, line 370") at global/qglobal.cpp:2291
0000009 0x00007fe31f0a63b0 in qt_message(QtMsgType, const char *, typedef __va_list_tag __va_list_tag *) (msgType=QtFatalMsg, msg=0x7fe31f251290 "ASSERT failure in %s: \"%s\", file %s, line %d", ap=0x7ffffa6e0e40) at global/qglobal.cpp:2337
0000010 0x00007fe31f0a6c1e in qFatal (msg=0x7fe31f251290 "ASSERT failure in %s: \"%s\", file %s, line %d") at global/qglobal.cpp:2520
0000011 0x00007fe31f0a5e27 in qt_assert_x (where=0x7fe31f252dec "QMutex::unlock()", what=0x7fe31f252db0 "A mutex must be unlocked in the same thread that locked it.", file=0x7fe31f252d00 "thread/qmutex.cpp", line=370) at global/qglobal.cpp:2044
0000012 0x00007fe31f0ad947 in QMutex::unlock (this=0xedfb78) at thread/qmutex.cpp:369
0000013 0x00000000004a5a4d in MainWindow::slotUpdateClip (this=0xa1ab80, id=...) at /home/thomas/src/kdenlive/src/mainwindow.cpp:919
0000014 0x00000000004c0024 in MainWindow::qt_metacall (this=0xa1ab80, _c=QMetaObject::InvokeMetaMethod, _id=22, _a=0x7ffffa6e12d0) at /home/thomas/build/kdenlive/src/mainwindow.moc:420
0000015 0x00007fe31f1d7fb7 in QMetaObject::metacall (object=0xa1ab80, cl=QMetaObject::InvokeMetaMethod, idx=68, argv=0x7ffffa6e12d0) at kernel/qmetaobject.cpp:237
0000016 0x00007fe31f1ed9f3 in QMetaObject::activate (sender=0x1e50130, m=0x709260, local_signal_index=10, argv=0x7ffffa6e12d0) at kernel/qobject.cpp:3278
0000017 0x00000000006060c3 in ProjectList::clipNeedsReload (this=<value optimized out>, _t1=<value optimized out>) at /home/thomas/build/kdenlive/src/projectlist.moc:574
0000018 0x0000000000616877 in ProjectList::slotReplyGetFileProperties (this=0x1e50130, clipId=..., producer=0x17b19d0, properties=..., metadata=..., replace=true) at /home/thomas/src/kdenlive/src/projectlist.cpp:2159
0000019 0x000000000061a5e1 in ProjectList::qt_metacall (this=0x1e50130, _c=QMetaObject::InvokeMetaMethod, _id=34, _a=0x7fe2f8664d50) at /home/thomas/build/kdenlive/src/projectlist.moc:436
0000020 0x00007fe31f1d7fb7 in QMetaObject::metacall (object=0x1e50130, cl=QMetaObject::InvokeMetaMethod, idx=61, argv=0x7fe2f8664d50) at kernel/qmetaobject.cpp:237
0000021 0x00007fe31f1e8036 in QMetaCallEvent::placeMetaCall (this=0x7fe2f86ec6d0, object=0x1e50130) at kernel/qobject.cpp:535
0000022 0x00007fe31f1e9311 in QObject::event (this=0x1e50130, e=0x7fe2f86ec6d0) at kernel/qobject.cpp:1217
0000023 0x00007fe31fcfdce3 in QWidget::event (this=0x1e50130, event=0x7fe2f86ec6d0) at kernel/qwidget.cpp:8758
0000024 0x00007fe31fc95bf0 in QApplicationPrivate::notify_helper (this=0x9a9530, receiver=0x1e50130, e=0x7fe2f86ec6d0) at kernel/qapplication.cpp:4481
0000025 0x00007fe31fc958f0 in QApplication::notify (this=0x7ffffa6e2bf0, receiver=0x1e50130, e=0x7fe2f86ec6d0) at kernel/qapplication.cpp:4446
0000026 0x00007fe3224f79e6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib64/libkdeui.so.5
0000027 0x00007fe31f1cfddf in QCoreApplication::notifyInternal (this=0x7ffffa6e2bf0, receiver=0x1e50130, event=0x7fe2f86ec6d0) at kernel/qcoreapplication.cpp:787
0000028 0x00007fe31fc8682b in QCoreApplication::sendEvent (receiver=0x1e50130, event=0x7fe2f86ec6d0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
0000029 0x00007fe31f1d1018 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x989050) at kernel/qcoreapplication.cpp:1428
0000030 0x00007fe31f1d0c39 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
0000031 0x00007fe31fd6290b in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
0000032 0x00007fe31f209394 in postEventSourceDispatch (s=0x9ac1c0) at kernel/qeventdispatcher_glib.cpp:277
0000033 0x00007fe318af0bd3 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
0000034 0x00007fe318af13b0 in ?? () from /lib64/libglib-2.0.so.0
0000035 0x00007fe318af1650 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
0000036 0x00007fe31f209c83 in QEventDispatcherGlib::processEvents (this=0x98eb00, flags=...) at kernel/qeventdispatcher_glib.cpp:422
0000037 0x00007fe31fd6eb6a in QGuiEventDispatcherGlib::processEvents (this=0x98eb00, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
0000038 0x00007fe31f1cd942 in QEventLoop::processEvents (this=0x7ffffa6e2b40, flags=...) at kernel/qeventloop.cpp:149
0000039 0x00007fe31f1cda96 in QEventLoop::exec (this=0x7ffffa6e2b40, flags=...) at kernel/qeventloop.cpp:201
0000040 0x00007fe31f1d04d2 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
0000041 0x00007fe31fc92d8c in QApplication::exec () at kernel/qapplication.cpp:3755
0000042 0x00000000004a520b in main (argc=1, argv=0x7ffffa6e3218) at /home/thomas/src/kdenlive/src/main.cpp:89
TagsNo tags attached.
Build/Install MethodManual build from Git
Attached Files

- Relationships
duplicate of 0002448closedj-b-m Crash when switching profile 

-  Notes
(0007790)
tmcguire (reporter)
2012-01-17 13:49

Note that when calling cleanupProducers() from MainWindow::slotUpdateClip(), m_replaceMutex is not locked and therefore unlock() will abort.
(0007791)
j-b-m (administrator)
2012-01-17 14:43

Hmm, this problem was also reported (issue 0002448) but I was never able to reproduce (I only have a 4 cores machine). I just committed a change that will prevent unlocking a non locked mutex, which may be the cause of the problem... Can you please try with current git (revision ee92246) ?
(0007792)
tmcguire (reporter)
2012-01-17 14:51

Crash is fixed in git master.
Thanks for the super fast response and fix :)
(0007793)
tmcguire (reporter)
2012-01-17 14:52

And sorry for the duplicate

- Issue History
Date Modified Username Field Change
2012-01-17 13:11 tmcguire New Issue
2012-01-17 13:36 j-b-m Relationship added duplicate of 0002448
2012-01-17 13:49 tmcguire Note Added: 0007790
2012-01-17 14:43 j-b-m Note Added: 0007791
2012-01-17 14:43 j-b-m Assigned To => j-b-m
2012-01-17 14:43 j-b-m Status new => feedback
2012-01-17 14:51 tmcguire Note Added: 0007792
2012-01-17 14:51 tmcguire Status feedback => assigned
2012-01-17 14:52 tmcguire Note Added: 0007793
2012-01-17 15:15 j-b-m Status assigned => resolved
2012-01-17 15:15 j-b-m Fixed in Version => Recent git
2012-01-17 15:15 j-b-m Resolution open => fixed
2012-05-15 10:57 j-b-m Fixed in Version Recent git => 0.9
2012-05-15 10:58 j-b-m Status resolved => closed


Copyright © 2000 - 2014 MantisBT Team
Powered by Mantis Bugtracker