[evolution-mapi] Bug #678952 - Meeting invitation reply causes crash of Outlook 2010



commit 69749d3ab36b1c78cae7bb73669019475175b0c0
Author: Milan Crha <mcrha redhat com>
Date:   Thu Sep 13 18:10:14 2012 +0200

    Bug #678952 - Meeting invitation reply causes crash of Outlook 2010

 src/libexchangemapi/e-mapi-cal-utils.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/src/libexchangemapi/e-mapi-cal-utils.c b/src/libexchangemapi/e-mapi-cal-utils.c
index 0198ecd..4137202 100644
--- a/src/libexchangemapi/e-mapi-cal-utils.c
+++ b/src/libexchangemapi/e-mapi-cal-utils.c
@@ -2055,21 +2055,27 @@ e_mapi_cal_utils_comp_to_object (EMapiConnection *conn,
 				/* Translators: This is a meeting response prefix which will be shown in a message Subject */
 				prefix_subject (C_("MeetingResp", "Accepted:"));
 				text = IPM_SCHEDULE_MEETING_RESP_POS;
+				flag32 = 1 << 5; /* ciRespondedAccept */
 			} else if (cbdata->resp == olResponseTentative) {
 				/* Translators: This is a meeting response prefix which will be shown in a message Subject */
 				prefix_subject (C_("MeetingResp", "Tentative:"));
 				text = IPM_SCHEDULE_MEETING_RESP_TENT;
+				flag32 = 1 << 4; /* ciRespondedTentative */
 			} else if (cbdata->resp == olResponseDeclined) {
 				/* Translators: This is a meeting response prefix which will be shown in a message Subject */
 				prefix_subject (C_("MeetingResp", "Declined:"));
 				text = IPM_SCHEDULE_MEETING_RESP_NEG;
+				flag32 = 1 << 6; /* ciRespondedDecline */
 			} else {
 				text = "";
+				flag32 = 1 << 11; /* ciCanceled */
 			}
 			#undef prefix_subject
 			set_value (PidTagMessageClass, text);
 			text = NULL;
 
+			set_value (PidLidClientIntent, &flag32);
+
 			flag32 = 0xFFFFFFFF;  /* no idea why this has to be -1, but that's what the docs say */
 			set_value (PidTagIconIndex, &flag32);
 
@@ -2082,6 +2088,9 @@ e_mapi_cal_utils_comp_to_object (EMapiConnection *conn,
 			flag32 = mtgEmpty;
 			set_value (PidLidMeetingType, &flag32);
 
+			tt = icaltime_as_timet (icaltime_current_time_with_zone (utc_zone));
+			set_timet_value (PidLidAppointmentReplyTime, tt);
+
 			break;
 		case NOT_A_MEETING :
 		default :



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]