Summary: | KDED crashes with kdeconnect | ||
---|---|---|---|
Product: | [Applications] kdeconnect | Reporter: | Kai Uwe Broulik <kde> |
Component: | common | Assignee: | Albert Vaca Cintora <albertvaka> |
Status: | RESOLVED DOWNSTREAM | ||
Severity: | crash | CC: | brabus84, ddrs, kde, mikekoltsov, stuart |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | unspecified | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Kai Uwe Broulik
2013-09-09 10:16:15 UTC
Just git pull'd. Problem persists. I still have no clue on this issue. The crash is in libQCA, so it could be a missing library or something like that... but no idea. Also, the bug https://bugs.kde.org/show_bug.cgi?id=325374 looks really similar to this one, but the backtrace is different so I'm not sure it is a duplicate. *** Bug 325374 has been marked as a duplicate of this bug. *** Well, backtraces are not that different actually :P Marking as duplicate but still ni idea on how to fix it... if you manage to fix it please post it here so your solution can help other users Can it be possible that installation via checkinstall caused this bug? Also, I've just removed kdeconnect, now kded4 does not seem to be crashing anymore. Try installing it from git, and then we will know :P Actually, I was building it from git. BTW, will I be able to remove kde connect if I use make install instead of checkinstall? Sure, make uninstall :-) Okay, it seems that I got somewhat different backtrace when trying to reload kded4: Application: Служба KDE (kded4), signal: Segmentation fault Using host libthread_db library "/lib64/libthread_db.so.1". [Current thread is 1 (Thread 0x7f7d35647780 (LWP 5800))] Thread 7 (Thread 0x7f7d1222b700 (LWP 5817)): #0 0x00007f7d34f86d9d in poll () from /lib64/libc.so.6 #1 0x00007f7d306369a4 in g_main_context_iterate.isra.24 () from /lib64/libglib-2.0.so.0 #2 0x00007f7d30636ac4 in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #3 0x00007f7d32de29c6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #4 0x00007f7d32db315f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #5 0x00007f7d32db33e8 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #6 0x00007f7d32cb4660 in QThread::exec() () from /lib64/libQtCore.so.4 #7 0x00007f7d32cb763c in QThreadPrivate::start(void*) () from /lib64/libQtCore.so.4 #8 0x00007f7d30bead18 in start_thread () from /lib64/libpthread.so.0 #9 0x00007f7d34f907cd in clone () from /lib64/libc.so.6 #10 0x0000000000000000 in ?? () Thread 6 (Thread 0x7f7d11618700 (LWP 5818)): #0 0x00007f7d30becbc8 in pthread_mutex_lock () from /lib64/libpthread.so.0 #1 0x00007f7d306739d1 in g_mutex_lock () from /lib64/libglib-2.0.so.0 #2 0x00007f7d306368a5 in g_main_context_iterate.isra.24 () from /lib64/libglib-2.0.so.0 #3 0x00007f7d30636ac4 in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #4 0x00007f7d32de29c6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #5 0x00007f7d32db315f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #6 0x00007f7d32db33e8 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #7 0x00007f7d32cb4660 in QThread::exec() () from /lib64/libQtCore.so.4 #8 0x00007f7d32d939af in QInotifyFileSystemWatcherEngine::run() () from /lib64/libQtCore.so.4 #9 0x00007f7d32cb763c in QThreadPrivate::start(void*) () from /lib64/libQtCore.so.4 #10 0x00007f7d30bead18 in start_thread () from /lib64/libpthread.so.0 #11 0x00007f7d34f907cd in clone () from /lib64/libc.so.6 #12 0x0000000000000000 in ?? () Thread 5 (Thread 0x7f7d09770700 (LWP 6022)): #0 0x00007f7d30bee971 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f7d32cb7af7 in QWaitCondition::wait(QMutex*, unsigned long) () from /lib64/libQtCore.so.4 #2 0x00007f7d32cab35f in QThreadPoolThread::run() () from /lib64/libQtCore.so.4 #3 0x00007f7d32cb763c in QThreadPrivate::start(void*) () from /lib64/libQtCore.so.4 #4 0x00007f7d30bead18 in start_thread () from /lib64/libpthread.so.0 #5 0x00007f7d34f907cd in clone () from /lib64/libc.so.6 #6 0x0000000000000000 in ?? () Thread 4 (Thread 0x7f7d08f6f700 (LWP 6023)): #0 0x00007f7d30bee971 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f7d32cb7af7 in QWaitCondition::wait(QMutex*, unsigned long) () from /lib64/libQtCore.so.4 #2 0x00007f7d32cab35f in QThreadPoolThread::run() () from /lib64/libQtCore.so.4 #3 0x00007f7d32cb763c in QThreadPrivate::start(void*) () from /lib64/libQtCore.so.4 #4 0x00007f7d30bead18 in start_thread () from /lib64/libpthread.so.0 #5 0x00007f7d34f907cd in clone () from /lib64/libc.so.6 #6 0x0000000000000000 in ?? () Thread 3 (Thread 0x7f7cffffe700 (LWP 6024)): #0 0x00007f7d30bee971 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f7d32cb7af7 in QWaitCondition::wait(QMutex*, unsigned long) () from /lib64/libQtCore.so.4 #2 0x00007f7d32cab35f in QThreadPoolThread::run() () from /lib64/libQtCore.so.4 #3 0x00007f7d32cb763c in QThreadPrivate::start(void*) () from /lib64/libQtCore.so.4 #4 0x00007f7d30bead18 in start_thread () from /lib64/libpthread.so.0 #5 0x00007f7d34f907cd in clone () from /lib64/libc.so.6 #6 0x0000000000000000 in ?? () Thread 2 (Thread 0x7f7cff7fd700 (LWP 6025)): #0 0x00007f7d30bee971 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007f7d32cb7af7 in QWaitCondition::wait(QMutex*, unsigned long) () from /lib64/libQtCore.so.4 #2 0x00007f7d32cab35f in QThreadPoolThread::run() () from /lib64/libQtCore.so.4 #3 0x00007f7d32cb763c in QThreadPrivate::start(void*) () from /lib64/libQtCore.so.4 #4 0x00007f7d30bead18 in start_thread () from /lib64/libpthread.so.0 #5 0x00007f7d34f907cd in clone () from /lib64/libc.so.6 #6 0x0000000000000000 in ?? () Thread 1 (Thread 0x7f7d35647780 (LWP 5800)): [KCrash Handler] #5 0x00007f7d18b03f10 in QCA::Provider::Context::provider() const () from /lib64/libqca.so.2 #6 0x00007f7d18b27bbb in QCA::KeyGenerator::createRSA(int, int, QString const&) () from /lib64/libqca.so.2 #7 0x00007f7d08358122 in Daemon::Daemon (this=0x29ae390, parent=<optimized out>) at /home/michel/kdeconnect-kde/kded/daemon.cpp:57 #8 0x00007f7d08359247 in KPluginFactory::createInstance<Daemon, QObject> (parentWidget=<optimized out>, parent=<optimized out>, args=...) at /usr/include/KDE/../kpluginfactory.h:477 #9 0x00007f7d3359fb15 in KPluginFactory::create(char const*, QWidget*, QObject*, QList<QVariant> const&, QString const&) () from /lib64/libkdecore.so.5 #10 0x00007f7d3525bd07 in Kded::loadModule(KSharedPtr<KService> const&, bool) () from /lib64/libkdeinit4_kded4.so #11 0x00007f7d3525cd17 in Kded::initModules() () from /lib64/libkdeinit4_kded4.so #12 0x00007f7d3525f391 in KDEDApplication::newInstance() () from /lib64/libkdeinit4_kded4.so #13 0x00007f7d34749a72 in KUniqueApplicationAdaptor::newInstance(QByteArray const&, QByteArray const&) () from /lib64/libkdeui.so.5 #14 0x00007f7d34749af4 in KUniqueApplicationAdaptor::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /lib64/libkdeui.so.5 #15 0x00007f7d34749c2b in KUniqueApplicationAdaptor::qt_metacall(QMetaObject::Call, int, void**) () from /lib64/libkdeui.so.5 #16 0x00007f7d33135ed3 in QDBusConnectionPrivate::deliverCall(QObject*, int, QDBusMessage const&, QList<int> const&, int) () from /lib64/libQtDBus.so.4 #17 0x00007f7d33136f06 in QDBusConnectionPrivate::activateCall(QObject*, int, QDBusMessage const&) () from /lib64/libQtDBus.so.4 #18 0x00007f7d33137946 in QDBusConnectionPrivate::activateObject(QDBusConnectionPrivate::ObjectTreeNode&, QDBusMessage const&, int) () from /lib64/libQtDBus.so.4 #19 0x00007f7d33137a3b in QDBusActivateObjectEvent::placeMetaCall(QObject*) () from /lib64/libQtDBus.so.4 #20 0x00007f7d32dc8dae in QObject::event(QEvent*) () from /lib64/libQtCore.so.4 #21 0x00007f7d33a2a4c4 in QApplication::event(QEvent*) () from /lib64/libQtGui.so.4 #22 0x00007f7d33a283bc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQtGui.so.4 #23 0x00007f7d33a2c83a in QApplication::notify(QObject*, QEvent*) () from /lib64/libQtGui.so.4 #24 0x00007f7d347437a6 in KApplication::notify(QObject*, QEvent*) () from /lib64/libkdeui.so.5 #25 0x00007f7d32db44ae in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /lib64/libQtCore.so.4 #26 0x00007f7d32db7f61 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib64/libQtCore.so.4 #27 0x00007f7d32de2813 in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQtCore.so.4 #28 0x00007f7d306366d5 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0 #29 0x00007f7d30636a08 in g_main_context_iterate.isra.24 () from /lib64/libglib-2.0.so.0 #30 0x00007f7d30636ac4 in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #31 0x00007f7d32de29a6 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #32 0x00007f7d33ac852e in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtGui.so.4 #33 0x00007f7d32db315f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #34 0x00007f7d32db33e8 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQtCore.so.4 #35 0x00007f7d32db8278 in QCoreApplication::exec() () from /lib64/libQtCore.so.4 #36 0x00007f7d3525b420 in kdemain () from /lib64/libkdeinit4_kded4.so #37 0x00007f7d34ec2ba5 in __libc_start_main () from /lib64/libc.so.6 #38 0x0000000000400751 in _start () Okay, here are some [possibly positive] news: $ git clone git://anongit.kde.org/kdeconnect-kde $ cd kdeconnect-kde $ mkdir build $ cd build $ cmake ../ # note that I don't use -DCMAKE_INSTALL_PREFIX=/usr $ make $ sudo make install As for me, that does not crash kded4. However, $ qdbus org.kde.kded /kded loadModule kdeconnect returns "false". Any suggestions, Albert? On some distros QCA is split into the library and the plugins that make it work for absolutely no apparent reason except to make our life difficult. You need to tell packagers and users to install qca-gnupg. Also in your code you can do a + if(!QCA::isSupported("cert")) { before you do your QCA::fromCertificate::fromDER calls to prevent a crash. (if you're using GPG then you'll need to change what goes in that string.) Edit: make that qca-ossl. (or maybe both.. ) Installing QCA-ossl after QCA-gnupg solved the issue. Everything seems to be working fine. Thanks a million, guys, you're awesome :) P.S. -DCMAKE_INSTALL_PREFIX=/usr is ok. Thank you David! I had no clue on this issue, your knowledge is greatly appreciated :) It's knowledge I have my software hit this exact same bug. I would suggest you still add a guard against crashing, even if you then just gracefully fail. (breaking all of kded is not particularly graceful) You can do this with if(!!QCA::isSupported("someWordHereThatIDontKnow")) { return; } Also make it clear when you make your next announcement to the packagers ML. *knowledge I have because my software hit this exact same bug Well, I made no announcement to packagers, but they started releasing packages anyway :S However, I will add that guard and maybe a message explaining the problem to the user. *** Bug 325967 has been marked as a duplicate of this bug. *** *** Bug 333091 has been marked as a duplicate of this bug. *** Hi guys, i can't pair my phone on OpenSuse 13.1 x64 becaus kdeconnect crashes. In the xsession-errors i have this: kdeconnect(4783)/kdeconnect_kded Daemon::Daemon: Error: KDE Connect detects wrong permissions for private file "/home/ezio/.kde4/share/apps/kdeconnect/key.pem" Can i solve the issue? Thanks. EDIT: a friend of mine sent me his key.pem, it works on my pc too (after "chmod 600 key.pem"). (In reply to comment #20) > Hi guys, i can't pair my phone on OpenSuse 13.1 x64 becaus kdeconnect > crashes. > In the xsession-errors i have this: > kdeconnect(4783)/kdeconnect_kded Daemon::Daemon: Error: KDE Connect detects > wrong permissions for private file > "/home/ezio/.kde4/share/apps/kdeconnect/key.pem" > > Can i solve the issue? > Thanks. *** Bug 333301 has been marked as a duplicate of this bug. *** |