[Kde-pim] Re: process akonadi_mixedmaildir_resource crashes
Guy Maurel
guy-kde at maurel.de
Thu Jul 21 18:14:29 BST 2011
Hello Kevin!
On Wednesday, July 20, 2011 07:14:22 PM Kevin Krammer wrote:
> Hi Guy,
>
> On Wednesday, 2011-07-20, Guy Maurel wrote:
> > Hello!
> >
> > At the end of the kmail-migration, the process
> > akonadi_mixedmaildir_resource crashes.
> >
> > This occurs in the method:
> > SpecialCollectionsRequestJobPrivate::resourceScanResult( KJob *job )
>
> Where in the mixed maildir resource is this called?
> I can't remember adding that.
if ( qobject_cast<DefaultResourceJob*>( job ) ) {
// This is the default resource.
if ( resourceId != mSpecialCollections->d->defaultResourceId() ) {
kError(0) << "Resource id's don't match: " << resourceId
<< mSpecialCollections->d->defaultResourceId();
Q_ASSERT( false );
}
>
> > because of the test:
> > if ( resourceId != mSpecialCollections->d->defaultResourceId() ) {
> >
> > The variable resourceId has the value:
> > akonadi_mixedmaildir_resource_0
> > The method mSpecialCollections->d->defaultResourceId() returns the value:
> > akonadi_maildir_resource_0
>
> You got a back trace that indicated this string comparion caused the crash?
Yes. But if I stop just before:
(gdb) bt 13
#0 Akonadi::SpecialCollectionsRequestJobPrivate::resourceScanResult (this=0x8e89d0, job=<value optimized out>) at guy-kde/kdesvn/kdepimlibs/akonadi/specialcollectionsrequestjob.cpp:205
#1 0x00007f266f1ef775 in Akonadi::SpecialCollectionsRequestJob::qt_metacall (this=0x8d59b0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff5ce72980) at guy-kde/kdesvn/build/kdepimlibs/akonadi/specialcollectionsrequestjob.moc:80
#2 0x00007f266eb24b7f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from guy-kde/qt4/lib/libQtCore.so.4
#3 0x00007f266e108a93 in KJob::result (this=0x8d1dd0, _t1=0x8d1dd0) at guy-kde/kdesvn/build/kdelibs/kdecore/kjob.moc:194
#4 0x00007f266e107f01 in KJob::emitResult (this=0x8d1dd0) at guy-kde/kdesvn/kdelibs/kdecore/jobs/kjob.cpp:312
#5 0x00007f266f1ea53a in Akonadi::ResourceScanJob::Private::fetchResult (this=0x8ecbb0, job=<value optimized out>) at guy-kde/kdesvn/kdepimlibs/akonadi/specialcollectionshelperjobs.cpp:154
#6 0x00007f266f1ea6e1 in Akonadi::ResourceScanJob::qt_metacall (this=0x8d1dd0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff5ce72cc0) at guy-kde/kdesvn/build/kdepimlibs/akonadi/specialcollectionshelperjobs_p.moc:72
#7 0x00007f266f1ec7f0 in Akonadi::DefaultResourceJob::qt_metacall (this=0x8d1dd0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff5ce72cc0) at guy-kde/kdesvn/build/kdepimlibs/akonadi/specialcollectionshelperjobs_p.moc:133
#8 0x00007f266eb24b7f in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from guy-kde/qt4/lib/libQtCore.so.4
#9 0x00007f266e108a93 in KJob::result (this=0x8d84f0, _t1=0x8d84f0) at guy-kde/kdesvn/build/kdelibs/kdecore/kjob.moc:194
#10 0x00007f266e107f01 in KJob::emitResult (this=0x8d84f0) at guy-kde/kdesvn/kdelibs/kdecore/jobs/kjob.cpp:312
#11 0x00007f266f1b5a71 in Akonadi::Job::qt_metacall (this=0x8d84f0, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0x823300) at guy-kde/kdesvn/build/kdepimlibs/akonadi/job.moc:91
#12 0x00007f266f1493a5 in Akonadi::CollectionFetchJob::qt_metacall (this=0x8d84f0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x823300) at guy-kde/kdesvn/build/kdepimlibs/akonadi/collectionfetchjob.moc:75
>
> > The problem is (I think) that the variable:
> > mDefaultResourceId
> > defined in specialcollections_p.h, has no setter-method.
>
> Which means it has its default construction value, in the case of a QString an
> empty QString object.
Yes. I found no code to change the value.
Should not the new value be told from some DBus-message?
Coming from the migration? Is such a message sent?
This occurs at the end of the migration, as kmail-migrator is doing a "take over".
Bye
--
guy
_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/
More information about the kde-pim
mailing list