From: <svn...@op...> - 2009-10-16 21:06:29
|
Author: cdfrey Date: Fri Oct 16 23:06:15 2009 New Revision: 5872 URL: http://www.opensync.org/changeset/5872 Log: Fixed bug where member_id is not updated when new member is added This patch sets the member_id in osync_group_add_member() in the same place that the configdir is set, since that's when osync_group_create_member_id() is called. With this fix, it is possible to add a member to a group, and then immediately list it, without reloading from disk. Modified: trunk/opensync/group/opensync_group.c Modified: trunk/opensync/group/opensync_group.c ============================================================================== --- trunk/opensync/group/opensync_group.c Fri Oct 16 17:18:15 2009 (r5871) +++ trunk/opensync/group/opensync_group.c Fri Oct 16 23:06:15 2009 (r5872) @@ -777,7 +777,8 @@ osync_assert(group); if (!osync_member_get_configdir(member)) { - char *configdir = osync_strdup_printf("%s%c%lli", group->configdir, G_DIR_SEPARATOR, osync_group_create_member_id(group)); + member->id = osync_group_create_member_id(group); + char *configdir = osync_strdup_printf("%s%c%lli", group->configdir, G_DIR_SEPARATOR, member->id); osync_member_set_configdir(member, configdir); osync_free(configdir); } |