Hello Thomas,

This code was introduced last week. It is supposed to listen to Akonadi to 
dynamically update contacts information as soon as they change. I found this 
race condition earlier this morning ( 
https://projects.savoirfairelinux.com/issues/36988 ) and I am fixing it right 
now. Please update later today and test again and confirm if the bug is fixed 
for you. I am leaving for Christmas soon and I really want this to be stable. 
Everybody contact list is different, so I guess there will be a bunch of 
unsupported corner cases. For me, it doesn't crash, but runtime analysis show 
that there is indeed a mismatch between the rowCount and number of 
phoneNumbers. This last less than 1 ms, but apparently is enough to crash your 
client. Please update the linked issue if you still have problem in 5 hours 
from now. Thanks for reporting!

Emmanuel
----- Original Message -----
From: "Thomas Maass" <[email protected]>
To: [email protected]
Sent: Monday, December 16, 2013 11:09:56 AM
Subject: [SFLphone] Segfault with git build of KDE client

Hi!
I did a git build under Debian Jessie. The core seems to run,
I hear signalling under KDE without client open. But the client
crashes on start. I get this backtrace:

Application: SFLphone KDE Client (sflphone-client-kde), signal: 
Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[KCrash Handler]
#5  __memset_sse2 () at ../sysdeps/x86_64/multiarch/../memset.S:873
#6  0x00007f0d9dd08e40 in QVector<ContactTreeNode*>::realloc 
(this=this@entry=0x2dd3c70, asize=48062480, aalloc=0) at 
/usr/include/qt4/QtCore/qvector.h:547
#7  0x00007f0d9dd065b2 in detach_helper (this=0x2dd3c70) at 
/usr/include/qt4/QtCore/qvector.h:337
#8  detach (this=0x2dd3c70) at /usr/include/qt4/QtCore/qvector.h:147
#9  data (this=0x2dd3c70) at /usr/include/qt4/QtCore/qvector.h:152
#10 operator[] (i=0, this=0x2dd3c70) at 
/usr/include/qt4/QtCore/qvector.h:360
#11 ContactProxyModel::index (this=0x2ad7700, row=0, column=0, 
parent=...) at 
/usr/local/src/sflphone/kde/src/lib/contactproxymodel.cpp:395
#12 0x00007f0d993080cc in ?? () from /usr/lib/x86_64-linux-
gnu/libQtGui.so.4
#13 0x00007f0d993081bd in 
QSortFilterProxyModel::mapToSource(QModelIndex const&) const () from 
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#14 0x00007f0d99302a22 in ?? () from /usr/lib/x86_64-linux-
gnu/libQtGui.so.4
#15 0x00007f0d99303836 in ?? () from /usr/lib/x86_64-linux-
gnu/libQtGui.so.4
#16 0x00007f0d981234c8 in QMetaObject::activate(QObject*, 
QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-
gnu/libQtCore.so.4
#17 0x00007f0d9dd06a70 in ContactProxyModel::getTopLevelItem 
(this=this@entry=0x2ad7700, category=...) at 
/usr/local/src/sflphone/kde/src/lib/contactproxymodel.cpp:147
#18 0x00007f0d9dd0706c in ContactProxyModel::reloadCategories 
(this=0x2ad7700) at 
/usr/local/src/sflphone/kde/src/lib/contactproxymodel.cpp:168
#19 0x00007f0d981234c8 in QMetaObject::activate(QObject*, 
QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-
gnu/libQtCore.so.4
#20 0x00007f0d9dd2f9d0 in 
AbstractContactBackend::collectionChanged (this=<optimized out>) at 
/usr/local/src/sflphone/kde/build/src/lib/moc_abstractcontactbackend.cxx:107
#21 0x00007f0d9df7a03c in AkonadiBackend::collectionsReceived 
(this=0x2777690, list=...) at 
/usr/local/src/sflphone/kde/src/klib/akonadibackend.cpp:355
#22 0x00007f0d9df77029 in AkonadiBackend::qt_static_metacall 
(_o=0x2777690, _c=QMetaObject::InvokeMetaMethod, _id=0, 
_a=0x7fffed0271b0) at 
/usr/local/src/sflphone/kde/build/src/klib/moc_akonadibackend.cpp:60
#23 0x00007f0d981234c8 in QMetaObject::activate(QObject*, 
QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-
gnu/libQtCore.so.4
#24 0x00007f0d9cb6d262 in 
Akonadi::CollectionFetchJob::collectionsReceived(QList<Akonadi::Collection> 
const&) () from /usr/lib/libakonadi-kde.so.4
#25 0x00007f0d9cb6da73 in ?? () from /usr/lib/libakonadi-kde.so.4
#26 0x00007f0d981234c8 in QMetaObject::activate(QObject*, 
QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-
gnu/libQtCore.so.4
#27 0x00007f0d988244a2 in KJob::result(KJob*) () from 
/usr/lib/libkdecore.so.5
#28 0x00007f0d988244e0 in KJob::emitResult() () from 
/usr/lib/libkdecore.so.5
#29 0x00007f0d9812787e in QObject::event(QEvent*) () from 
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#30 0x00007f0d98d8f75c in 
QApplicationPrivate::notify_helper(QObject*, QEvent*) () from 
/usr/lib/x86_64-linux-gnu/libQtGui.so.4
#31 0x00007f0d98d95dd0 in QApplication::notify(QObject*, QEvent*) () 
from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007f0d9d85d49a in KApplication::notify(QObject*, QEvent*) () 
from /usr/lib/libkdeui.so.5
#33 0x000000000043a38f in SFLPhoneApplication::notify 
(this=<optimized out>, receiver=<optimized out>, e=<optimized out>) 
at /usr/local/src/sflphone/kde/src/sflphoneapplication.cpp:171
#34 0x00007f0d9810f33d in QCoreApplication::notifyInternal(QObject*, 
QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#35 0x00007f0d9811289f in 
QCoreApplicationPrivate::sendPostedEvents(QObject*, int, 
QThreadData*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#36 0x00007f0d9813cbf3 in ?? () from /usr/lib/x86_64-linux-
gnu/libQtCore.so.4
#37 0x00007f0d93a1aea6 in g_main_context_dispatch () from 
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007f0d93a1b1f8 in ?? () from /lib/x86_64-linux-
gnu/libglib-2.0.so.0
#39 0x00007f0d93a1b29c in g_main_context_iteration () from 
/lib/x86_64-linux-gnu/libglib-2.0.so.0
#40 0x00007f0d9813c4b5 in 
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) 
() from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#41 0x00007f0d98e2d896 in ?? () from /usr/lib/x86_64-linux-
gnu/libQtGui.so.4
#42 0x00007f0d9810df9f in 
QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) 
() from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#43 0x00007f0d9810e295 in 
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from 
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#44 0x00007f0d981138db in QCoreApplication::exec() () from 
/usr/lib/x86_64-linux-gnu/libQtCore.so.4
#45 0x0000000000428f9d in main (argc=1, argv=0x7fffed027c38) at 
/usr/local/src/sflphone/kde/src/main.cpp:82

Any idea?

Thomas
-- 
gpg-id: d31aaeea
https://www.setho.org/people
_______________________________________________
SFLphone mailing list
[email protected]
http://lists.savoirfairelinux.net/mailman/listinfo/sflphone
_______________________________________________
SFLphone mailing list
[email protected]
http://lists.savoirfairelinux.net/mailman/listinfo/sflphone

Reply via email to