aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/conduits
diff options
context:
space:
mode:
Diffstat (limited to 'calendar/conduits')
-rw-r--r--calendar/conduits/calendar/calendar-conduit.c10
-rw-r--r--calendar/conduits/todo/todo-conduit.c12
2 files changed, 19 insertions, 3 deletions
diff --git a/calendar/conduits/calendar/calendar-conduit.c b/calendar/conduits/calendar/calendar-conduit.c
index 2ded9bec6d..10bf56c404 100644
--- a/calendar/conduits/calendar/calendar-conduit.c
+++ b/calendar/conduits/calendar/calendar-conduit.c
@@ -786,7 +786,8 @@ post_sync (GnomePilotConduit *conduit,
GnomePilotDBInfo *dbi,
ECalConduitContext *ctxt)
{
- gchar *filename;
+ GList *changed;
+ gchar *filename, *change_id;
LOG ("post_sync: Calendar Conduit v.%s", CONDUIT_VERSION);
LOG ("---------------------------------------------------------\n");
@@ -795,6 +796,13 @@ post_sync (GnomePilotConduit *conduit,
e_pilot_map_write (filename, ctxt->map);
g_free (filename);
+ /* FIX ME ugly hack - our changes musn't count, this does introduce
+ * a race condition if anyone changes a record elsewhere during sycnc
+ */
+ change_id = g_strdup_printf ("pilot-sync-evolution-calendar-%d", ctxt->cfg->pilot_id);
+ changed = cal_client_get_changes (ctxt->client, CALOBJ_TYPE_EVENT, change_id);
+ cal_client_change_list_free (changed);
+
return 0;
}
diff --git a/calendar/conduits/todo/todo-conduit.c b/calendar/conduits/todo/todo-conduit.c
index 15cb4286bb..236345afa1 100644
--- a/calendar/conduits/todo/todo-conduit.c
+++ b/calendar/conduits/todo/todo-conduit.c
@@ -594,7 +594,8 @@ post_sync (GnomePilotConduit *conduit,
GnomePilotDBInfo *dbi,
EToDoConduitContext *ctxt)
{
- gchar *filename;
+ GList *changed;
+ gchar *filename, *change_id;
LOG ("post_sync: ToDo Conduit v.%s", CONDUIT_VERSION);
LOG ("---------------------------------------------------------\n");
@@ -603,7 +604,14 @@ post_sync (GnomePilotConduit *conduit,
e_pilot_map_write (filename, ctxt->map);
e_pilot_map_destroy (ctxt->map);
g_free (filename);
-
+
+ /* FIX ME ugly hack - our changes musn't count, this does introduce
+ * a race condition if anyone changes a record elsewhere during sycnc
+ */
+ change_id = g_strdup_printf ("pilot-sync-evolution-todo-%d", ctxt->cfg->pilot_id);
+ changed = cal_client_get_changes (ctxt->client, CALOBJ_TYPE_TODO, change_id);
+ cal_client_change_list_free (changed);
+
return 0;
}