I haven't still tested, but I think that it's OK. Since, for event, todo and memo you have the same key "uri". With your patch, you will have : uri_event, uri_todo and uri_memo.
I'm going to test your patch. Thank's Le dimanche 03 mai 2009 à 04:12 -0400, Chris Frey a écrit : > On Sun, May 03, 2009 at 09:25:28AM +0200, Nicolas wrote: > > "evo_cal->uri" is OK > > > > but in the function "osync_sink_state_equal": > > old_value = osync_sink_state_get(sinkStateDB, key, error); > > old_value isn't OK ! value is empty ! > > [...] > > > Only when you sync several objtype > > Does this patch help at all? > > - Chris > > > > diff --git a/src/evolution2_ecal.c b/src/evolution2_ecal.c > index 87b71f0..97677af 100644 > --- a/src/evolution2_ecal.c > +++ b/src/evolution2_ecal.c > @@ -98,7 +98,7 @@ static void evo2_ecal_connect(OSyncObjTypeSink *sink, > OSyncPluginInfo *info, OSy > osync_error_set(&error, OSYNC_ERROR_GENERIC, "Anchor missing > for objtype \"%s\"", osync_objtype_sink_get_name(sink)); > goto error_free_cal; > } > - if (!osync_sink_state_equal(state_db, "uri", evo_cal->uri, > &state_match, &error)) { > + if (!osync_sink_state_equal(state_db, evo_cal->uri_key, evo_cal->uri, > &state_match, &error)) { > osync_error_set(&error, OSYNC_ERROR_GENERIC, "Anchor comparison > failed for objtype \"%s\"", osync_objtype_sink_get_name(sink)); > goto error_free_cal; > } > @@ -151,7 +151,7 @@ static void evo2_ecal_sync_done(OSyncObjTypeSink *sink, > OSyncPluginInfo *info, O > osync_error_set(&error, OSYNC_ERROR_GENERIC, "State database > missing for objtype \"%s\"", osync_objtype_sink_get_name(sink)); > goto error; > } > - if (!osync_sink_state_set(state_db, "uri", evo_cal->uri, &error)) > + if (!osync_sink_state_set(state_db, evo_cal->uri_key, evo_cal->uri, > &error)) > goto error; > > GList *changes = NULL; > @@ -397,6 +397,7 @@ osync_bool evo2_ecal_discover(OSyncEvoCalendar *evo_cal, > OSyncCapabilities *caps > > osync_bool evo2_ecal_initialize(OSyncEvoEnv *env, OSyncPluginInfo *info, > const char *objtype, const char *required_format, OSyncError **error) > { > + char *uri_key; > > osync_assert(env); > osync_assert(info); > @@ -428,6 +429,10 @@ osync_bool evo2_ecal_initialize(OSyncEvoEnv *env, > OSyncPluginInfo *info, const c > > OSyncPluginConfig *config = osync_plugin_info_get_config(info); > OSyncPluginResource *resource = > osync_plugin_config_find_active_resource(config, objtype); > + uri_key = malloc(5 + strlen(objtype)); > + strcpy(uri_key, "uri_"); > + strcat(uri_key, objtype); > + cal->uri_key = uri_key; > cal->uri = osync_plugin_resource_get_url(resource); > if(!cal->uri) { > osync_error_set(error,OSYNC_ERROR_GENERIC, "%s url not set", > objtype); > diff --git a/src/evolution2_sync.h b/src/evolution2_sync.h > index 34625a5..dc17387 100644 > --- a/src/evolution2_sync.h > +++ b/src/evolution2_sync.h > @@ -46,6 +46,7 @@ typedef struct evo2_location { > } evo2_location; > > typedef struct OSyncEvoCalendar { > + const char *uri_key; > const char *uri; > const char *objtype; > const char *change_id; > > > ------------------------------------------------------------------------------ > Register Now & Save for Velocity, the Web Performance & Operations > Conference from O'Reilly Media. Velocity features a full day of > expert-led, hands-on workshops and two days of sessions from industry > leaders in dedicated Performance & Operations tracks. Use code vel09scf > and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf > _______________________________________________ > Barry-devel mailing list > Barry-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/barry-devel -- Nicolas VIVIEN ------------------------------------------------------------------------------ Register Now & Save for Velocity, the Web Performance & Operations Conference from O'Reilly Media. Velocity features a full day of expert-led, hands-on workshops and two days of sessions from industry leaders in dedicated Performance & Operations tracks. Use code vel09scf and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf _______________________________________________ Barry-devel mailing list Barry-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/barry-devel