Bug 93310

Summary: Reproducable crash when viewing included message
Product: [Applications] kmail Reporter: Dik Takken <kde>
Component: GUIAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED FIXED    
Severity: crash    
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Gentoo Packages   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Email message, saved by KMail (does not trigger crash)
Email message, copied maildir file

Description Dik Takken 2004-11-15 13:18:25 UTC
Version:            (using KDE KDE 3.3.0)
Installed from:    Gentoo Packages
OS:                Linux

The enclosed mail message crashes KMail immediately when you select it. I guess the problem is the displaying of the message, because when the preview window is closed, I can select the message without crashing.

I will enclose the message bz2 compressed, in two 'formats'. One is obtained by selecting 'save as' from KMail's file menu. The other was obtained by copying the message straight from the maildir directory on the mail server. I access this maildir from Kmail by using the Courier IMAP server.

KMail does *not* crash when just opening the message that was saved with KMail's 'save as' function, I guess you need to inject the maildir file into your own maildir directory in order to trigger the crash.
Comment 1 Dik Takken 2004-11-15 13:19:32 UTC
Created attachment 8286 [details]
Email message, saved by KMail (does not trigger crash)
Comment 2 Dik Takken 2004-11-15 13:20:38 UTC
Created attachment 8287 [details]
Email message, copied maildir file
Comment 3 Carsten Burghardt 2004-11-15 22:41:47 UTC
CVS commit by burghard: 

Init the QDict.
BUG: 93310


  M +2 -2      mimeheader.cc   1.20


--- kdepim/kioslaves/imap4/mimeheader.cc  #1.19:1.20
@@ -86,7 +86,6 @@ mimeHeader::addHdrLine (mimeHdrLine * aH
       int skip;
       char *aCStr = addLine->getValue ().data ();
-      QDict < QString > *aList;
+      QDict < QString > *aList = 0;
 
-      aList = NULL;
       skip = mimeHdrLine::parseSeparator (';', aCStr);
       if (skip > 0)
@@ -141,4 +140,5 @@ mimeHeader::addHdrLine (mimeHdrLine * aH
         {
           additionalHdrLines.append (addLine);
+          aList = new QDict < QString >;
         }
 //        cout << addLine->getLabel().data() << ": '" << mimeValue.data() << "'" << endl;