Tom Parker wrote:
Armin Bauer <[EMAIL PROTECTED]> wrote:
Tom Parker wrote:
http://sourceforge.net/mailarchive/forum.php?thread_id=6221779&forum_id=12899
Has anyone solved it in a hackish kind of way? I understand most
i dont think that there is a solution already for the current multisync version. After all i also started opensync to be able to fix these problems without applying a major hack each time.
We'll I've done it. See the attached patch against a snapshot I downloaded about 3 days ago. It probably wants some sort of configuration option hung around it as it may not be so good in all cases. It will probably fall over when or if Evolution outputs a version 3 feature that the phone doesn't understand. My c skills are somewhat rusty, but this solution seems to work.
yes. thats what i meant with "major hack". :) Like you said yourself, this will break phones that dont understand some options of 3.0.
no i dont think that the debian package is missing bugfixes. The duplication checking code in the current multisync is very simple and wont catch duplicates in a lot of cases.
I think nearly all of my confusion has been to do with poor duplicate detection and the resync button not actually doing what I expected.
The "resync" button does a slow-sync. This means that each device is queried for all items (instead of only the changes). This helps if the device does not return the changes but might lead to duplication.
I think I read here that this doesn't work with evolution 2. Certainly it doesn't work for me.
ah right. for the resync to work the plugins must support a special function "get all objects", but the evo2 plugin in multisync 0.8X does not have this. to make a quick fix go to ~/.evolution/addressbook/local/system/ (for the "Personal" addressbook) and delete the *.changes.db files.
-- Tom Parker - [EMAIL PROTECTED] - http://www.carrott.org
------------------------------------------------------------------------
*** multisync_orig/plugins/evolution2_sync/src/evolution_sync.c Sat Nov 27 05:08:20 2004 --- multisync/plugins/evolution2_sync/src/evolution_sync.c Thu Apr 14 19:43:46 2005 *************** *** 176,181 **** --- 176,192 ---- ebc = (EBookChange *)object; EVCard vcard = ebc->contact->parent; *data = e_vcard_to_string(&vcard, EVC_FORMAT_VCARD_30); + { + // this is a hack by [EMAIL PROTECTED] to make evolution 2 work + // with Siemens SyncML phones. So far, the only property of the + // version 3 vcard that needs changing is the version number. See + // this outdated wiki page: + // http://wiki.ciaweb.net/yawiki/index.php?area=Contact_Vcard&page=HomePage&dt=2004-03-13%2019:01:23 + char *offset = strstr(*data, "VERSION:3.0"); + if (offset) { + memcpy(offset, "VERSION:2.1", strlen("VERSION:2.1")); + } + } *uid = e_contact_get_const(ebc->contact, E_CONTACT_UID); //*datasize = strlen(*data) + 1; switch (ebc->change_type) {
signature.asc
Description: OpenPGP digital signature