https://bugs.meego.com/show_bug.cgi?id=19739
pohly <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #1 from pohly <[email protected]> 2011-06-22 20:40:29 UTC --- Gabriel already pointed me towards the culprit: // Set ConsumerReady for existing SyncEvolution < 1.2 configs // if not set explicitly, // because in older releases all existing configurations where // shown. SyncEvolution 1.2 is more strict and assumes that // ConsumerReady must be set explicitly. The sync-ui always has // set the flag for configs created or modified with it, but the // command line did not. Matches similar code in the Cmdline.cpp // migration code. if (syncConfig->getConfigVersion(CONFIG_LEVEL_PEER, CONFIG_CUR_VERSION) == 0 /* SyncEvolution < 1.2 */) { localConfigs.insert(make_pair("ConsumerReady", "1")); } As the comment says, setting "ConsumerReady" was meant for existing configs. Applying it to templates is wrong. Templates get updated together with SyncEvolution (or should be - there might be custom templates which are not), so their "ConsumerReady" flag must not be touched. Fix is here: pohly@pohly-mobl1:~/src/syncevolution$ git log -n 1 -p commit 4246a916895c8204f077fe1d05eb49abc5f660fd Author: Patrick Ohly <[email protected]> Date: Wed Jun 22 22:35:32 2011 +0200 syncevo-dbus-server: all templates had the "ConsumerReady" flag turned on (BMC #19739) The flag should only have been added to old configurations. Adding it to templates (which happen to match the version check) is wrong and must be avoided. Because of the wrong flag, the "SyncEvolution" template was shown in the MeeGo UX UI although it shouldn't have been. diff --git a/src/syncevo-dbus-server.cpp b/src/syncevo-dbus-server.cpp index df378d5..6414f38 100644 --- a/src/syncevo-dbus-server.cpp +++ b/src/syncevo-dbus-server.cpp @@ -2975,7 +2975,11 @@ void ReadOperations::getConfig(bool getTemplate, // set the flag for configs created or modified with it, but the // command line did not. Matches similar code in the Cmdline.cpp // migration code. - if (syncConfig->getConfigVersion(CONFIG_LEVEL_PEER, CONFIG_CUR_VERSION) == 0 /* SyncEvolution < 1.2 */) { + // + // This does not apply to templates which always have ConsumerReady + // set explicitly (to on or off) or not set (same as off). + if (!getTemplate && + syncConfig->getConfigVersion(CONFIG_LEVEL_PEER, CONFIG_CUR_VERSION) == 0 /* SyncEvolution < 1.2 */) { localConfigs.insert(make_pair("ConsumerReady", "1")); } -------- Product: OS Middleware Component: SyncEvolution MeeGo Release: 1.2 Severity: normal Priority: Undecided Keywords: Status: RESOLVED Who: [email protected] Assigned To: [email protected] Target Build: --- Flags: Changed: Status Resolution -------- https://bugs.meego.com/show_bug.cgi?id=19739 -- Configure bugmail: https://bugs.meego.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are watching someone on the CC list of the bug. _______________________________________________ Syncevolution-issues mailing list [email protected] http://lists.syncevolution.org/listinfo/syncevolution-issues
