[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kmail-devel
Subject:    Reason for crashes when filtering mails
From:       Andreas Gungl <a.gungl () gmx ! de>
Date:       2007-02-25 12:39:38
Message-ID: 200702251339.45598 () gungl-dd ! de
[Download RAW message or body]

[Attachment #2 (multipart/signed)]


Hello,

starting with KMail from KDE 3.5.6 I often get crashes when filtering many 
messages in a folder manually (applying all filters).
The problem goes down to the following lines in kmfolder.cpp:

int KMFolder::find( const KMMsgBase* msg ) const
{
  return mStorage ? mStorage->find( msg ) : 0;
}

I've encountered mStorage being null, so I end up with 0 in the calling method 
KMHeaders::applyFiltersOnMsg() (in kmheaders.cpp line 1378).

      int idx = msgBase->parent()->find(msgBase);
      assert(idx != -1);
      KMMessage * msg = msgBase->parent()->getMsg(idx);

If I insert a condition to process only for idx != 0, KMail doesn't crash 
anymore.
This makes me wonder if idx == 0 is a valid index and how the assert is meant 
to work. Of course, the real problem is mStorage being not defined, but 
that's a bit beyond my knowledge of the folder stuff in KMail.

Well, if someone can comment on this, I'd like to fix it the right way.

Regards,
Andreas
-- 
Kindermode Online - Fashion for Kids
http://www.theofeel.de

[Attachment #5 (application/pgp-signature)]

_______________________________________________
KMail developers mailing list
KMail-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmail-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic