Hello community,

here is the log from the commit of package evolution-ews for openSUSE:Factory 
checked in at 2018-02-07 18:38:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/evolution-ews (Old)
 and      /work/SRC/openSUSE:Factory/.evolution-ews.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "evolution-ews"

Wed Feb  7 18:38:46 2018 rev:81 rq:573058 version:3.26.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/evolution-ews/evolution-ews.changes      
2018-01-16 09:28:52.595577321 +0100
+++ /work/SRC/openSUSE:Factory/.evolution-ews.new/evolution-ews.changes 
2018-02-07 18:38:50.315419159 +0100
@@ -1,0 +2,6 @@
+Mon Feb  5 13:23:55 UTC 2018 - [email protected]
+
+- Update to version 3.26.5:
+  + Bugs fixed: bgo#793037.
+
+-------------------------------------------------------------------

Old:
----
  evolution-ews-3.26.4.tar.xz

New:
----
  evolution-ews-3.26.5.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ evolution-ews.spec ++++++
--- /var/tmp/diff_new_pack.OZ3BXb/_old  2018-02-07 18:38:50.879392739 +0100
+++ /var/tmp/diff_new_pack.OZ3BXb/_new  2018-02-07 18:38:50.883392551 +0100
@@ -17,7 +17,7 @@
 
 
 Name:           evolution-ews
-Version:        3.26.4
+Version:        3.26.5
 Release:        0
 # _version needs to be %{version} stripped to major.minor.micro only...
 %define _version %(echo %{version} | grep -E -o '[0-9]+\.[0-9]+\.[0-9]+')

++++++ evolution-ews-3.26.4.tar.xz -> evolution-ews-3.26.5.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/evolution-ews-3.26.4/CMakeLists.txt 
new/evolution-ews-3.26.5/CMakeLists.txt
--- old/evolution-ews-3.26.4/CMakeLists.txt     2018-01-08 11:34:32.000000000 
+0100
+++ new/evolution-ews-3.26.5/CMakeLists.txt     2018-02-05 12:21:53.000000000 
+0100
@@ -4,7 +4,7 @@
 cmake_policy(VERSION 3.1)
 
 project(evolution-ews
-       VERSION 3.26.4
+       VERSION 3.26.5
        LANGUAGES C)
 set(PROJECT_BUGREPORT 
"http://bugzilla.gnome.org/enter_bug.cgi?product=evolution-ews";)
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/evolution-ews-3.26.4/NEWS 
new/evolution-ews-3.26.5/NEWS
--- old/evolution-ews-3.26.4/NEWS       2018-01-08 11:34:32.000000000 +0100
+++ new/evolution-ews-3.26.5/NEWS       2018-02-05 12:21:53.000000000 +0100
@@ -1,3 +1,9 @@
+Evolution-EWS 3.26.5 2018-02-05
+-------------------------------
+
+Bug Fixes:
+       Bug 793037 - Some appointments displayed as meetings (Milan Crha)
+
 Evolution-EWS 3.26.4 2018-01-08
 -------------------------------
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/evolution-ews-3.26.4/src/calendar/e-cal-backend-ews.c 
new/evolution-ews-3.26.5/src/calendar/e-cal-backend-ews.c
--- old/evolution-ews-3.26.4/src/calendar/e-cal-backend-ews.c   2018-01-08 
11:34:32.000000000 +0100
+++ new/evolution-ews-3.26.5/src/calendar/e-cal-backend-ews.c   2018-02-05 
12:21:53.000000000 +0100
@@ -85,6 +85,7 @@
        " calendar:UID" \
        " calendar:Resources" \
        " calendar:ModifiedOccurrences" \
+       " calendar:IsMeeting" \
        " calendar:MyResponseType" \
        " calendar:RequiredAttendees" \
        " calendar:OptionalAttendees"
@@ -657,59 +658,63 @@
                const EwsId *item_id;
                const GSList *l = NULL;
                const gchar *uid = e_ews_item_get_uid (item);
-               gchar *user_email;
 
                item_id = e_ews_item_get_id (item);
-               user_email = camel_ews_settings_dup_email (ews_settings);
 
-               /* Attendees */
-               for (l = e_ews_item_get_attendees (item); l != NULL; l = 
g_slist_next (l)) {
-                       icalparameter *param, *cu_type;
-                       gchar *mailtoname;
-                       const gchar *email = NULL;
-                       EwsAttendee *attendee = (EwsAttendee *) l->data;
+               if (e_ews_item_get_is_meeting (item)) {
+                       gchar *user_email;
 
-                       if (!attendee->mailbox)
-                               continue;
+                       user_email = camel_ews_settings_dup_email 
(ews_settings);
 
-                       if (g_strcmp0 (attendee->mailbox->routing_type, "EX") 
== 0)
-                               email = e_ews_item_util_strip_ex_address 
(attendee->mailbox->email);
+                       /* Attendees */
+                       for (l = e_ews_item_get_attendees (item); l != NULL; l 
= g_slist_next (l)) {
+                               icalparameter *param, *cu_type;
+                               gchar *mailtoname;
+                               const gchar *email = NULL;
+                               EwsAttendee *attendee = (EwsAttendee *) l->data;
 
-                       mailtoname = g_strdup_printf ("mailto:%s";, email ? 
email : attendee->mailbox->email);
-                       icalprop = icalproperty_new_attendee (mailtoname);
-                       g_free (mailtoname);
+                               if (!attendee->mailbox)
+                                       continue;
 
-                       param = icalparameter_new_cn (attendee->mailbox->name);
-                       icalproperty_add_parameter (icalprop, param);
+                               if (g_strcmp0 (attendee->mailbox->routing_type, 
"EX") == 0)
+                                       email = 
e_ews_item_util_strip_ex_address (attendee->mailbox->email);
 
-                       if (g_ascii_strcasecmp (attendee->attendeetype, 
"Required") == 0) {
-                               param = icalparameter_new_role 
(ICAL_ROLE_REQPARTICIPANT);
-                               cu_type = icalparameter_new_cutype 
(ICAL_CUTYPE_INDIVIDUAL);
-                       }
-                       else if (g_ascii_strcasecmp (attendee->attendeetype, 
"Resource") == 0) {
-                               param = icalparameter_new_role 
(ICAL_ROLE_NONPARTICIPANT);
-                               cu_type = icalparameter_new_cutype 
(ICAL_CUTYPE_RESOURCE);
-                       }
-                       else {
-                               param = icalparameter_new_role ( 
ICAL_ROLE_OPTPARTICIPANT);
-                               cu_type = icalparameter_new_cutype 
(ICAL_CUTYPE_INDIVIDUAL);
-                       }
-                       icalproperty_add_parameter (icalprop, cu_type);
-                       icalproperty_add_parameter (icalprop, param);
+                               mailtoname = g_strdup_printf ("mailto:%s";, 
email ? email : attendee->mailbox->email);
+                               icalprop = icalproperty_new_attendee 
(mailtoname);
+                               g_free (mailtoname);
+
+                               param = icalparameter_new_cn 
(attendee->mailbox->name);
+                               icalproperty_add_parameter (icalprop, param);
+
+                               if (g_ascii_strcasecmp (attendee->attendeetype, 
"Required") == 0) {
+                                       param = icalparameter_new_role 
(ICAL_ROLE_REQPARTICIPANT);
+                                       cu_type = icalparameter_new_cutype 
(ICAL_CUTYPE_INDIVIDUAL);
+                               }
+                               else if (g_ascii_strcasecmp 
(attendee->attendeetype, "Resource") == 0) {
+                                       param = icalparameter_new_role 
(ICAL_ROLE_NONPARTICIPANT);
+                                       cu_type = icalparameter_new_cutype 
(ICAL_CUTYPE_RESOURCE);
+                               }
+                               else {
+                                       param = icalparameter_new_role ( 
ICAL_ROLE_OPTPARTICIPANT);
+                                       cu_type = icalparameter_new_cutype 
(ICAL_CUTYPE_INDIVIDUAL);
+                               }
+                               icalproperty_add_parameter (icalprop, cu_type);
+                               icalproperty_add_parameter (icalprop, param);
+
+                               if (user_email && (email || 
attendee->mailbox->email) && e_ews_item_get_my_response_type (item) &&
+                                   g_ascii_strcasecmp (email ? email : 
attendee->mailbox->email, user_email) == 0) {
+                                       param = 
ecb_ews_responsetype_to_partstat (e_ews_item_get_my_response_type (item));
+                               } else {
+                                       param = 
ecb_ews_responsetype_to_partstat (attendee->responsetype);
+                               }
+                               icalproperty_add_parameter (icalprop, param);
 
-                       if (user_email && (email || attendee->mailbox->email) 
&& e_ews_item_get_my_response_type (item) &&
-                           g_ascii_strcasecmp (email ? email : 
attendee->mailbox->email, user_email) == 0) {
-                               param = ecb_ews_responsetype_to_partstat 
(e_ews_item_get_my_response_type (item));
-                       } else {
-                               param = ecb_ews_responsetype_to_partstat 
(attendee->responsetype);
+                               icalcomponent_add_property (icalcomp, icalprop);
                        }
-                       icalproperty_add_parameter (icalprop, param);
 
-                       icalcomponent_add_property (icalcomp, icalprop);
+                       g_free (user_email);
                }
 
-               g_free (user_email);
-
                /* Free/Busy */
                freebusy = icalcomponent_get_first_property (icalcomp, 
ICAL_TRANSP_PROPERTY);
                if (!freebusy && (e_ews_item_get_item_type (item) != 
E_EWS_ITEM_TYPE_TASK)) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/evolution-ews-3.26.4/src/server/e-ews-item.c 
new/evolution-ews-3.26.5/src/server/e-ews-item.c
--- old/evolution-ews-3.26.4/src/server/e-ews-item.c    2018-01-08 
11:34:32.000000000 +0100
+++ new/evolution-ews-3.26.5/src/server/e-ews-item.c    2018-02-05 
12:21:53.000000000 +0100
@@ -134,6 +134,7 @@
        EwsMailbox *from;
        EwsMailbox *sender;
 
+       gboolean is_meeting;
        GSList *modified_occurrences;
        GSList *attachments_ids;
        gchar *my_response_type;
@@ -300,6 +301,7 @@
        item->priv = G_TYPE_INSTANCE_GET_PRIVATE (item, E_TYPE_EWS_ITEM, 
EEwsItemPrivate);
 
        item->priv->item_type = E_EWS_ITEM_TYPE_UNKNOWN;
+       item->priv->is_meeting = FALSE;
 
        item->priv->mapi_extended_tags = g_hash_table_new_full (g_direct_hash, 
g_direct_equal, NULL, g_free);
        item->priv->mapi_extended_sets = g_hash_table_new_full (g_str_hash, 
g_str_equal, g_free, (GDestroyNotify) g_hash_table_destroy);
@@ -1140,6 +1142,10 @@
                        parse_extended_property (priv, subparam);
                } else if (!g_ascii_strcasecmp (name, "ModifiedOccurrences")) {
                        process_modified_occurrences (priv, subparam);
+               } else if (!g_ascii_strcasecmp (name, "IsMeeting")) {
+                       value = e_soap_parameter_get_string_value (subparam);
+                       priv->is_meeting = (!g_ascii_strcasecmp (value, 
"true"));
+                       g_free (value);
                } else if (!g_ascii_strcasecmp (name, "MyResponseType")) {
                        g_free (priv->my_response_type);
                        priv->my_response_type = 
e_soap_parameter_get_string_value (subparam);
@@ -1389,6 +1395,14 @@
 }
 
 gboolean
+e_ews_item_get_is_meeting (EEwsItem *item)
+{
+       g_return_val_if_fail (E_IS_EWS_ITEM (item), FALSE);
+
+       return item->priv->is_meeting;
+}
+
+gboolean
 e_ews_item_is_forwarded (EEwsItem *item,
                          gboolean *forwarded)
 {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/evolution-ews-3.26.4/src/server/e-ews-item.h 
new/evolution-ews-3.26.5/src/server/e-ews-item.h
--- old/evolution-ews-3.26.4/src/server/e-ews-item.h    2018-01-08 
11:34:32.000000000 +0100
+++ new/evolution-ews-3.26.5/src/server/e-ews-item.h    2018-02-05 
12:21:53.000000000 +0100
@@ -215,6 +215,7 @@
                                                (ESoapParameter *param);
 void           e_ews_mailbox_free              (EwsMailbox *mailbox);
 
+gboolean       e_ews_item_get_is_meeting       (EEwsItem *item);
 const GSList * e_ews_item_get_modified_occurrences
                                                (EEwsItem *item);
 gchar *                e_ews_embed_attachment_id_in_uri (const gchar *olduri, 
const gchar *attach_id);


Reply via email to