[gnome-calendar] manager: set 'rid' to NULL when 'All events' chosen



commit 68c604b095e63e92b9e02f1464e8f14dea920650
Author: Yash Singh <yashdev10p gmail com>
Date:   Thu Jun 15 02:43:47 2017 +0530

    manager: set 'rid' to NULL when 'All events' chosen
    
    Setting 'rid' to NULL in gcal_manager_update_event()
    when 'All events' chosen allows us to modify
    All and Future Instances of recurrent events correctly.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=782755

 src/gcal-manager.c |    9 +++++++++
 1 files changed, 9 insertions(+), 0 deletions(-)
---
diff --git a/src/gcal-manager.c b/src/gcal-manager.c
index f3bfa68..93a645f 100644
--- a/src/gcal-manager.c
+++ b/src/gcal-manager.c
@@ -1771,6 +1771,15 @@ gcal_manager_update_event (GcalManager    *manager,
   component = gcal_event_get_component (event);
 
   /*
+   * HACK: In Evolution Calendar, a NULL 'rid' is usually associated
+   * with an E_CAL_OBJ_MOD_ALL modtype. Here, we are manually setting
+   * the rid to NULL when modifying a recurrent event with MOD_ALL
+   * modtype.
+   */
+  if (mod == E_CAL_OBJ_MOD_ALL)
+    e_cal_component_set_recurid (component, NULL);
+
+  /*
    * While we're updating the event, we don't want the component
    * to be destroyed, so take a reference of the component while
    * we're performing the update on it.


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