--- Comment #6 from pohly <patrick.ohly(a)intel.com> 2010-09-03 09:22:57 PDT ---
I have code ready for review by Synthesis which adds the necessary
functionality (suppress parameters based on rules) and verified that it solves
the problem, without breaking useful functionality (syncing X-EVOLUTION-UI-SLOT
between SyncEvolution instances).
The changes are still in branches of libsynthesis resp. syncevolution at this
point in time.
Author: Patrick Ohly <patrick.ohly(a)intel.com>
Date: Thu Sep 2 11:54:36 2010 +0200
Nokia phones: avoid data loss in two-way sync due to X-EVOLUTION-UI-SLOT
Sending the X-EVOLUTION-UI-SLOT parameter to a Nokia phone when
updating an existing contact confuses the phone such that it drops the
phone number or email that had the parameter; the initial import was
okay. Reported for Nokia N81, E72, root-caused on a N97 mini.
Sending the X-EVOLUTION-UI-SLOT has very little value except when
talking to another SyncEvolution instance. All other SyncML peers
are expected to simply ignore the parameter, so there is no point
in sending it in the first place.
This is the solution implemented in this patch. A "rule" parameter
of the <parameter> element that defines X-EVOLUTION-UI-SLOT declares
that the parameter is to be ignored when parsing or generating vCards,
except when the peer is known to be SyncEvolution.
A remote peer is detected by the new 00_syncevolution.xml remote rule.
Locally, the parameter needs to be enabled when talking to Evolution
(evolution.xml) or to files which can also store the parameter
(all.xml). The later case is important for a SyncEvolution HTTP server
with file storage.
Running "./client-test Client::Sync::vcard30::testItems" against such
a SyncEvolution server confirmed that without all.xml, the
X-EVOLUTION-UI-SLOT got lost, which also confirms that the rule
Configure bugmail: http://bugs.meego.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching someone on the CC list of the bug.