Bug 362958 - After update KMail not interpreting Invite Emails
Summary: After update KMail not interpreting Invite Emails
Status: RESOLVED FIXED
Alias: None
Product: kmail2
Classification: Applications
Component: message list (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: NOR major
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-11 20:39 UTC by Craig
Modified: 2020-12-10 13:10 UTC (History)
14 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.3.0


Attachments
Fix Multipart Handling (7.57 KB, patch)
2016-07-17 02:39 UTC, Volker Christian
Details
A invitation mail, that is correctly displayed with kmail (2.44 KB, application/mbox)
2016-07-22 08:21 UTC, Sandro Knauß
Details
Test mail with invitation (2.21 KB, application/mbox)
2016-07-22 08:40 UTC, Fabian Vogt
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Craig 2016-05-11 20:39:57 UTC
Kmail doesn't seem to be interpretting Invite emails any longer, it looks to have started after 16.04.x was released but even after updating today to 16.04.1 it is still not resolved and I cannot find any similar bug reports. I receive many event invitations regularly and in the past month they only display the content of the email and not the type Accept/Reject/etc. options as is typical. These invites are coming from Outlook or Exchange and Kmail doesn't show any attachments even though when I open the same emails in any other client it shows the event invitation correctly as well as the invite.ics file, whereas again in Kmail it does not for some reason. Any ideas on how to get this back to working order? I've been accepting via my mobile email app but is a poor workaround of course, 

An example is I received an invite from someone on Exchange/Outlook and the email in Kmail shows:
When: Wednesday, May 11, 2016 1:30 PM-2:00 PM. (UTC-08:00) Pacific Time (US & Canada)
Where: Conference Call

*~*~*~*~*~*~*~*~*~*


And that's it, whereas when I check it on my phone app (Aquamail/Kmail/Gmail/etc.) it shows the proper event invitation as well as the invite.ics file which does not show under Kmail. Any ideas? Because I don't see this reported elsewhere I'm wondering if it's an option somewhere or a glitch added in the past couple updates that I'm missing although all the compatibility options for exchange/outlook are checked under Kmail Misc options. Thanks!

Reproducible: Always

Steps to Reproduce:
1. Receive invitation via email (may be just from those originating on Outlook and/or Exchange)

Actual Results:  
Just shows When and Where but no event information/invite.ics file

Expected Results:  
For it to show the proper accept/reject/propose alternative time type of options as well as the invite.ics actually showing (or at least interpreted)

Running the latest via Arch Linux v16.04.1-1 as of today, but also applied to 16.04.0-1 (Kmail shows 5.2.1 on About/Intro screen)
Comment 1 Eric MSP Veith 2016-05-18 11:06:05 UTC
I can confirm this problem with KMail 5.2.1 and Akonadi 5.2.1 from openSUSE KDE:Applications (akonadi-server-16.04.1-32.2.x86_64).

I have the same effect when getting both, invites and replies to invites I sent, from Google calendar users. Those E-Mails are displayed simply as-is, i.e., as a regular e-mail with an attachment that happens to be named "invite.ics". No buttons to accept/decline the invitation or record the response in my calendar appear.

So it is probably neither specific to MS Exchange or Arch packaging.
Comment 2 Craig 2016-05-18 20:12:08 UTC
Very odd, yea on mine I don't even see the invite.ics file attached within Kmail (shows no attachments) otherwise could always just open that file in korganizer as a fallback but that looks to be the exchange/outlook specific part as when I sent a calendar/event invite to myself from Google Calendar it does show the invite.ics file attached but again does not interpret so cannot do anything within the content of the email as used to.

To reiterate:
- Invites from exchange and/or outlook do not render properly at all within Kmail, it does not even show the invite.ics file or any attachments at all
- Invites from google and possibly others at least show the invite.ics file attached however still do not interpret/show invite reply options
Comment 3 Craig 2016-05-30 21:36:08 UTC
Anyone have any ideas on this? Pretty major feature for corporate and business :( If any questions or further info needed let us know, thanks guys!
Comment 4 Eric MSP Veith 2016-06-04 15:50:20 UTC
It seems as if the bodypartformatter for the text/calendar mime type is not built/installed. I've followed the source of the text_calendar.cpp file to kdepim-addons, where it sits, but does not seem to be included during build/installation.

I am new to the KDE source code, so if someone else can step in or give a hint, it would be great!
Comment 5 Eric MSP Veith 2016-06-04 21:06:58 UTC
It seems as if the bodypartformatter/calendar has been moved to kdepim-addons, but not before v16.04.01 had been tagged. However, it was removed from kdepim *before* v16.04.01 was tagged. So it should show up with the next release. Can somebody confirm that, please?
Comment 6 Craig 2016-06-07 02:02:26 UTC
Hey Eric,
You are the man thank you for checking that out and sounds like a mistake during tagging, hopefully we hear something from the KDE team soon as this is a MAJOR feature and requirement for business, has been causing a ton of issues and extra work for our small office as we decided to make the move to KDE across the board and surprised this snuck past as first major issue we've had - bummer such a major one for us.
Comment 7 Eric MSP Veith 2016-06-07 10:44:42 UTC
I am, however, not enitrely sure whether this is actually the root cause. Looking at the build of kdepim-16.04.01 on openSUSE, I see that a messageviewer_bodypartformatter_text_calendar.so is built, but not part of the package. Can you please check on your Arch systems whether a file called `messageviewer_bodypartformatter_text_calendar.so' exists?
Comment 8 Ferdinand Kuhl 2016-06-07 10:58:19 UTC
Add least in gentoo it is build and part of the installed files. But no invitations shown either - so its not just the "existance" of this shared object, which makes the difference. :(

qlist kdepim | grep bodypart
/usr/lib64/qt5/plugins/messageviewer_bodypartformatter_text_calendar.so
/usr/share/messageviewer/plugins/bodypartformatter/text_calendar.desktop
/usr/lib64/qt5/plugins/messageviewer_bodypartformatter_text_vcard.so
/usr/lib64/qt5/plugins/messageviewer_bodypartformatter_application_mstnef.so
/usr/lib64/qt5/plugins/messageviewer_bodypartformatter_text_xdiff.so
/usr/share/messageviewer/plugins/bodypartformatter/application_ms-tnef.desktop
/usr/share/messageviewer/plugins/bodypartformatter/text_vcard.desktop
/usr/share/messageviewer/plugins/bodypartformatter/text_xdiff.desktop
Comment 9 Craig 2016-06-08 19:29:35 UTC
Yea on mine as well,
(Arch)
/usr/lib/qt/plugins/messageviewer_bodypartformatter_text_calendar.so
Comment 10 Eric MSP Veith 2016-06-09 10:51:24 UTC
Do vCards work for you? For me they don't, and my guess is now that it is a general problem with loading the bodypartformatter plugins.
Comment 11 Laurent Montel 2016-06-10 11:13:54 UTC
Git commit 7c889402a30071b10512815bab69f65a230e4363 by Montel Laurent.
Committed on 10/06/2016 at 11:13.
Pushed by mlaurent into branch 'Applications/16.04'.

Load vcard plugin

M  +2    -2    messageviewer/src/viewer/bodypartformatter.cpp

http://commits.kde.org/messagelib/7c889402a30071b10512815bab69f65a230e4363
Comment 12 Eric MSP Veith 2016-06-10 11:27:26 UTC
Laurent, thanks for pointing us at the commit. Does that also imply that the body part formatter for text/calendar is just missing from the plugin load list?
Comment 13 Laurent Montel 2016-06-10 14:01:22 UTC
nope.
I think that Dan fixed it long time ago in next 5.2.2
Comment 14 auxsvr 2016-06-14 10:18:31 UTC
*** This bug has been confirmed by popular vote. ***
Comment 15 auxsvr 2016-06-14 14:19:17 UTC
I have patched messagelib-16.04.2 on openSUSE Leap 42.1 and it still doesn't work, no invitation appears. Should I recompile the rest of kdepim, too?
Comment 16 Eric MSP Veith 2016-06-16 11:19:59 UTC
Yes, the stock 16.04.2 doesn't bring a fix, too. I'd be willing to debug, but I'm still getting lost in the source code. Where is the bodypartformatter currently located (messagelib?), and how is it plugged into KMail?

Laurent, from the git log I see that you are the most active developer, and I thank you for working on and improving KMail. I am a happy, day-to-day user of KMail and very much appriciate the work you put into this great piece of software. If you could give a hint on the relevant pieces here, I'll happily try to contribute a fix.
Comment 17 Craig 2016-06-19 19:35:25 UTC
Also can confirm 16.04.2 did not resolve/still an issue :( Thanks for the commit Laurent, did that resolve the issue/just need to wait for it to hit in .3 ? auxsvr did you mean you patched using the commit above and still not working? 

Thanks Laurent for all your work over the years :) And thanks Eric for helping/trying to figure it out, hopefully can get it figured soon
Comment 18 auxsvr 2016-06-19 20:37:22 UTC
I used both pure 16.04.2 and the patch; neither fix this.
Comment 19 Volker Christian 2016-06-23 07:42:35 UTC
Any news about this bug! It is a showstopper for me using kdepim 16.04 as I need this feature urgently!
Comment 20 Craig 2016-07-02 01:01:16 UTC
Still nadda? Yea this is a major feature to be broken and feel like hasn't gotten much attention beyond Eric trying to figure who's not with the team :[ We may be able to figure it on our own just need some feedback from someone familiar with the code or preferably from the KDE pim team :\ It's now been months of me accepting invites from my phone client and it's very flakey as I do not always remember to do so not to mention a pain... Going to have to switch to Thunderbird or something pretty soon here which I can't stand plus lacks all integration with the rest of our systems/akonadi/etc.  Laurent chimed in briefly but he's also one of the busiest devs as far as commits :[
Comment 21 Craig 2016-07-06 21:14:08 UTC
Hey Laurent or otherwise,
Any chance could provide some input when able? We may able to help track down and resolve just need a little guidance as definitely want to get this resolved ASAP for those of us who use KDE PIM for business or just who receive email invitations in general. I've began running down the changes made from the last release vs this one where it broke for clues to where the fault may be but some guidance would do wonders, thanks!
Comment 22 Fabian Vogt 2016-07-14 19:54:35 UTC
I'm hit by this bug too, which is a really annoying one as now I have to use the webinterface...
I've got this log by running kmail with more debug enabled:

log_messageviewer: Node UNprocessed:  0x51a6cb0
log_messageviewer: Node UNprocessed:  0x334fb80
log_messageviewer: Node UNprocessed:  0x4edff10
log_messageviewer: Node UNprocessed:  0x321edf0
log_messageviewer: Node UNprocessed:  0x51a6cb0
log_messageviewer: Node UNprocessed:  0x334fb80
log_messageviewer: Node UNprocessed:  0x4edff10
log_messageviewer: Node UNprocessed:  0x321edf0
log_messageviewer: SET NODE:  0x51a6cb0 true
log_messageviewer: Node UNprocessed:  0x334fb80
log_messageviewer: SET NODE:  0x334fb80 true
log_messageviewer: SET NODE:  0x334fb80 true
log_messageviewer: Create temp file:  "/tmp/messageviewer_hr9709.index.1/unnamed"
log_messageviewer: SET NODE:  0x334fb80 true
log_messageviewer: Node processed:  "1" "Content-Type: text/plain; charset=\"iso-8859-1\""
log_messageviewer: Node UNprocessed:  0x321edf0
log_messageviewer: SET NODE:  0x321edf0 true
log_messageviewer: Node processed:  "2" "Content-Type: text/html; charset=\"iso-8859-1\""
log_messageviewer: Node processed:  "1" "Content-Type: text/plain; charset=\"iso-8859-1\""
log_messageviewer: Node processed:  "" "Content-Type: multipart/alternative; boundary=\"_000_047BDF03F51B7A4299992BE699F0119E012096D1NWBXMB02microfo_\""
log_messageviewer: SET NODE:  0x321edf0 true
log_messageviewer: 

It does not mention the third node that should be there, which begins with

Content-Type: text/calendar; charset="utf-8"; method=REQUEST
Content-Transfer-Encoding: base64

I swapped the last two nodes in the mail and that causes it to skip the second node,
so it only skips the text/calendar one.
I'd like to have a look at the code to find the issue, but I'd need a pointer where I should start looking.
Comment 23 Fabian Vogt 2016-07-16 21:44:32 UTC
I investigated a bit more:
When the mail contains only the text/calendar node, it's shown as expected.
The issue is that in a multipart/alternative handling, it only cares about text/plain and text/html.
If one of those is present, it's displayed and everything else is ignored.
I have no idea how a proper fix looks like, for now I changed the "break;" in messageviewer/src/viewer/objecttreeparser.cpp:352 to a "continue;", to always display all mail nodes, including text/calendar. This works well for me as I'm mostly working with plaintext mails and calendar invitations anyway.
Comment 24 Volker Christian 2016-07-17 02:39:08 UTC
Created attachment 100130 [details]
Fix Multipart Handling
Comment 25 Volker Christian 2016-07-17 02:42:46 UTC
(In reply to Fabian Vogt from comment #23)
> I investigated a bit more:
> When the mail contains only the text/calendar node, it's shown as expected.
> The issue is that in a multipart/alternative handling, it only cares about
> text/plain and text/html.
> If one of those is present, it's displayed and everything else is ignored.
> I have no idea how a proper fix looks like, for now I changed the "break;"
> in messageviewer/src/viewer/objecttreeparser.cpp:352 to a "continue;", to
> always display all mail nodes, including text/calendar. This works well for
> me as I'm mostly working with plaintext mails and calendar invitations
> anyway.

I found a more proper fix directly in the multipart/alternative handling. This is sure not the philosopher's stone. Nevertheless, it works for me also for html-mails. The patch is in comment 24. Be aware, that the patch is not well formated - it is only for testing.
Comment 26 Craig 2016-07-17 19:18:36 UTC
Hallelujah haha, after 4 months at least a temp fix. Unfortunately still word from anyone with the KDE team, hopefully someone can clean it up, get this committed and hopefully have it in by the 4th 1604 release. Thanks Fabian and Volker
Comment 27 Sandro Knauß 2016-07-18 11:26:38 UTC
Can you please add a message with invitation, that is not handled correctly?

Than I can create a test message to test the patch and include it.
Comment 28 Craig 2016-07-19 02:15:36 UTC
I can nab one later today when back at home, but it's pretty much ANY invite email whether from gmail, exchange, or Kontact/Kmail/Korg itself.

However one note, I think this may be unrelated but one thing noticed was when accepting an invite (using patch above) which was sent from a different time zone it added it to my local timezone at the same time/ignored their time zone specification, that may be a separate bug as I've seen multiple date-related issues since 16.04 in Kontact but figured would mention just in case, will submit a report for it when can confirm the results.
Comment 29 Sandro Knauß 2016-07-22 08:20:19 UTC
@craig: I cant reproduce this problem with korganizer (5.2.2) as sender of the mail.
I see correctly the invitation inside kmail.
Keep in mind, that you need kdepim-addons installed for displaying the invitations. 
So please upload a wrongly displayed email, so that I am able to reproduce the issue.

Content-Type: multipart/mixed; boundary="nextPart1"
MIME-Version: 1.0

 --nextPart1
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Some text describing the calendar

--nextPart1
Content-Type: text/calendar; charset="utf-8"; method="request"; name="cal.ics"
Content-Disposition: attachment
Content-Transfer-Encoding: quoted-printable

BEGIN:VCALENDAR
[...]
END:VCALENDAR

--nextPart1--
Comment 30 Sandro Knauß 2016-07-22 08:21:31 UTC
Created attachment 100242 [details]
A invitation mail, that is correctly displayed with kmail
Comment 31 Volker Christian 2016-07-22 08:38:43 UTC
(In reply to Sandro Knauß from comment #29)
> @craig: I cant reproduce this problem with korganizer (5.2.2) as sender of
> the mail.
> I see correctly the invitation inside kmail.
> Keep in mind, that you need kdepim-addons installed for displaying the
> invitations. 
> So please upload a wrongly displayed email, so that I am able to reproduce
> the issue.
> 
> Content-Type: multipart/mixed; boundary="nextPart1"
> MIME-Version: 1.0
> 
>  --nextPart1
> Content-Type: text/plain; charset="utf-8"
> Content-Transfer-Encoding: quoted-printable
> Content-Disposition: inline
> 
> Some text describing the calendar
> 
> --nextPart1
> Content-Type: text/calendar; charset="utf-8"; method="request";
> name="cal.ics"
> Content-Disposition: attachment
> Content-Transfer-Encoding: quoted-printable
> 
> BEGIN:VCALENDAR
> [...]
> END:VCALENDAR
> 
> --nextPart1--

That you can not reproduce the problem is due do that fact that the content-type of this mail is multipart/mixed which is handled correctly in messagelib. The content-type which is not handled correctly is multipart/alternative.
Comment 32 Fabian Vogt 2016-07-22 08:40:13 UTC
Created attachment 100243 [details]
Test mail with invitation

Here is a multipart/alternative mail that fails to display properly.
Comment 33 Volker Christian 2016-07-22 09:25:11 UTC
(In reply to Fabian Vogt from comment #32)
> Created attachment 100243 [details]
> Test mail with invitation
> 
> Here is a multipart/alternative mail that fails to display properly.

The patch in comment 24 handles this mail correctly.
Comment 34 Sandro Knauß 2016-07-22 09:59:41 UTC
Thanks for the mail, with that I reproduce this.

I will now create a test out of the mail and will try the patch.
Comment 35 Dan 2016-07-25 12:26:24 UTC
I can also confirm that the patch from comment 24 fixes invites sent from Exchange 2013. Good job.
Comment 36 Sandro Knauß 2016-07-25 13:25:41 UTC
The codebase has changed for 16.08 that why I need to refactor the patch and actually add the UI elements for it. To switch between the different parts.
Comment 37 Sandro Knauß 2016-07-26 10:28:34 UTC
Git commit 9b23c8b270bb1555ef9d1b1751fd987675c6279c by Sandro Knauß.
Committed on 26/07/2016 at 10:27.
Pushed by knauss into branch 'Applications/16.08'.

Render multipart/alternative with a invitation correctly

alternative parts can also have a calender element, so we want to render
that.

M  +1    -1    CMakeLists.txt
M  +6    -6    messageviewer/src/messagepartthemes/default/autotests/objecttreeparsertest.cpp
M  +12   -13   messageviewer/src/messagepartthemes/default/autotests/setupenv.h
M  +17   -8    messageviewer/src/messagepartthemes/default/defaultrenderer.cpp
M  +7    -6    messageviewer/src/viewer/objecttreeemptysource.cpp
M  +2    -2    messageviewer/src/viewer/objecttreeemptysource.h
M  +19   -6    messageviewer/src/viewer/objecttreeviewersource.cpp
M  +2    -2    messageviewer/src/viewer/objecttreeviewersource.h
M  +2    -1    messageviewer/src/viewer/viewer.h
M  +27   -2    messageviewer/src/viewer/viewer_p.cpp
M  +2    -0    messageviewer/src/viewer/viewer_p.h
M  +18   -1    messageviewer/src/widgets/htmlstatusbar.cpp
M  +4    -0    messageviewer/src/widgets/htmlstatusbar.h
M  +12   -13   mimetreeparser/autotests/setupenv.h
M  +26   -35   mimetreeparser/src/bodyformatter/multipartalternative.cpp
M  +3    -4    mimetreeparser/src/interfaces/objecttreesource.h
M  +2    -1    mimetreeparser/src/utils/util.h
M  +68   -32   mimetreeparser/src/viewer/messagepart.cpp
M  +13   -9    mimetreeparser/src/viewer/messagepart.h
M  +5    -3    mimetreeparser/src/viewer/objecttreeparser.cpp

http://commits.kde.org/messagelib/9b23c8b270bb1555ef9d1b1751fd987675c6279c
Comment 38 Fabian Vogt 2016-07-26 10:48:32 UTC
(In reply to Sandro Knauß from comment #37)
> Git commit 9b23c8b270bb1555ef9d1b1751fd987675c6279c by Sandro Knauß.
> Committed on 26/07/2016 at 10:27.
> Pushed by knauss into branch 'Applications/16.08'.
> 
> Render multipart/alternative with a invitation correctly
> 
> alternative parts can also have a calender element, so we want to render
> that.
> 
> M  +1    -1    CMakeLists.txt
> M  +6    -6   
> messageviewer/src/messagepartthemes/default/autotests/objecttreeparsertest.
> cpp
> M  +12   -13  
> messageviewer/src/messagepartthemes/default/autotests/setupenv.h
> M  +17   -8   
> messageviewer/src/messagepartthemes/default/defaultrenderer.cpp
> M  +7    -6    messageviewer/src/viewer/objecttreeemptysource.cpp
> M  +2    -2    messageviewer/src/viewer/objecttreeemptysource.h
> M  +19   -6    messageviewer/src/viewer/objecttreeviewersource.cpp
> M  +2    -2    messageviewer/src/viewer/objecttreeviewersource.h
> M  +2    -1    messageviewer/src/viewer/viewer.h
> M  +27   -2    messageviewer/src/viewer/viewer_p.cpp
> M  +2    -0    messageviewer/src/viewer/viewer_p.h
> M  +18   -1    messageviewer/src/widgets/htmlstatusbar.cpp
> M  +4    -0    messageviewer/src/widgets/htmlstatusbar.h
> M  +12   -13   mimetreeparser/autotests/setupenv.h
> M  +26   -35   mimetreeparser/src/bodyformatter/multipartalternative.cpp
> M  +3    -4    mimetreeparser/src/interfaces/objecttreesource.h
> M  +2    -1    mimetreeparser/src/utils/util.h
> M  +68   -32   mimetreeparser/src/viewer/messagepart.cpp
> M  +13   -9    mimetreeparser/src/viewer/messagepart.h
> M  +5    -3    mimetreeparser/src/viewer/objecttreeparser.cpp
> 
> http://commits.kde.org/messagelib/9b23c8b270bb1555ef9d1b1751fd987675c6279c

In messageviewer/src/viewer/viewer_p.cpp:
> +    const int pos = (availableModes.indexOf(mode) + 1) % availableModes.size();

"%" is dangerous. If availableModes is empty, it'll crash here. AFAICS it's not possible to reach that state, but it's not obvious at all.
Comment 39 Laurent Montel 2016-07-26 11:16:38 UTC
Git commit d8d0f65a88ccf524b8d2fb88fe9d5ad07409fd52 by Montel Laurent, on behalf of Sandro Knauß.
Committed on 26/07/2016 at 11:15.
Pushed by mlaurent into branch 'master'.

Render multipart/alternative with a invitation correctly

alternative parts can also have a calender element, so we want to render
that.

M  +6    -6    messageviewer/src/messagepartthemes/default/autotests/objecttreeparsertest.cpp
M  +12   -13   messageviewer/src/messagepartthemes/default/autotests/setupenv.h
M  +17   -8    messageviewer/src/messagepartthemes/default/defaultrenderer.cpp
M  +7    -6    messageviewer/src/viewer/objecttreeemptysource.cpp
M  +2    -2    messageviewer/src/viewer/objecttreeemptysource.h
M  +19   -6    messageviewer/src/viewer/objecttreeviewersource.cpp
M  +2    -2    messageviewer/src/viewer/objecttreeviewersource.h
M  +2    -1    messageviewer/src/viewer/viewer.h
M  +27   -2    messageviewer/src/viewer/viewer_p.cpp
M  +2    -0    messageviewer/src/viewer/viewer_p.h
M  +18   -1    messageviewer/src/widgets/htmlstatusbar.cpp
M  +4    -0    messageviewer/src/widgets/htmlstatusbar.h
M  +12   -13   mimetreeparser/autotests/setupenv.h
M  +26   -35   mimetreeparser/src/bodyformatter/multipartalternative.cpp
M  +3    -4    mimetreeparser/src/interfaces/objecttreesource.h
M  +2    -1    mimetreeparser/src/utils/util.h
M  +68   -32   mimetreeparser/src/viewer/messagepart.cpp
M  +13   -9    mimetreeparser/src/viewer/messagepart.h
M  +5    -3    mimetreeparser/src/viewer/objecttreeparser.cpp

http://commits.kde.org/messagelib/d8d0f65a88ccf524b8d2fb88fe9d5ad07409fd52
Comment 40 Sandro Knauß 2016-07-26 13:40:31 UTC
(In reply to Fabian Vogt from comment #38)
> (In reply to Sandro Knauß from comment #37)
> > Git commit 9b23c8b270bb1555ef9d1b1751fd987675c6279c by Sandro Knauß.
> > Committed on 26/07/2016 at 10:27.
> > Pushed by knauss into branch 'Applications/16.08'.
> > 
> > Render multipart/alternative with a invitation correctly
> > 
> > alternative parts can also have a calender element, so we want to render
> > that.
> > 
> > M  +1    -1    CMakeLists.txt
> > M  +6    -6   
> > messageviewer/src/messagepartthemes/default/autotests/objecttreeparsertest.
> > cpp
> > M  +12   -13  
> > messageviewer/src/messagepartthemes/default/autotests/setupenv.h
> > M  +17   -8   
> > messageviewer/src/messagepartthemes/default/defaultrenderer.cpp
> > M  +7    -6    messageviewer/src/viewer/objecttreeemptysource.cpp
> > M  +2    -2    messageviewer/src/viewer/objecttreeemptysource.h
> > M  +19   -6    messageviewer/src/viewer/objecttreeviewersource.cpp
> > M  +2    -2    messageviewer/src/viewer/objecttreeviewersource.h
> > M  +2    -1    messageviewer/src/viewer/viewer.h
> > M  +27   -2    messageviewer/src/viewer/viewer_p.cpp
> > M  +2    -0    messageviewer/src/viewer/viewer_p.h
> > M  +18   -1    messageviewer/src/widgets/htmlstatusbar.cpp
> > M  +4    -0    messageviewer/src/widgets/htmlstatusbar.h
> > M  +12   -13   mimetreeparser/autotests/setupenv.h
> > M  +26   -35   mimetreeparser/src/bodyformatter/multipartalternative.cpp
> > M  +3    -4    mimetreeparser/src/interfaces/objecttreesource.h
> > M  +2    -1    mimetreeparser/src/utils/util.h
> > M  +68   -32   mimetreeparser/src/viewer/messagepart.cpp
> > M  +13   -9    mimetreeparser/src/viewer/messagepart.h
> > M  +5    -3    mimetreeparser/src/viewer/objecttreeparser.cpp
> > 
> > http://commits.kde.org/messagelib/9b23c8b270bb1555ef9d1b1751fd987675c6279c
> 
> In messageviewer/src/viewer/viewer_p.cpp:
> > +    const int pos = (availableModes.indexOf(mode) + 1) % availableModes.size();
> 
> "%" is dangerous. If availableModes is empty, it'll crash here. AFAICS it's
> not possible to reach that state, but it's not obvious at all.

Done with http://commits.kde.org/messagelib/3e8df6cf7d4d8e9bbed4357fbf4b1215a37d27ba 

Please feel welcomed to add your own patches directly into phabricator.kde.org, so it is easier for us to not oversee things. <-- this is also true for Volker Christian. But this is not part of this bug report anymore :D
Comment 41 me 2020-12-09 15:51:57 UTC
it seems to bug came back. I use kmail-20.08.3 and inline outlook/exchange invitations don't get interpreted...

should we reopen or should I create a new bug?
Comment 42 me 2020-12-10 13:10:56 UTC
(In reply to me from comment #41)
> it seems to bug came back. I use kmail-20.08.3 and inline outlook/exchange
> invitations don't get interpreted...
> 
> should we reopen or should I create a new bug?

scratch that, kdepim-addons was not installed...