[sync] bug #157: String::convertCharset missing in vcard and other places

Karsten Fourmont fourmont at gmx.de
Mon Sep 19 04:40:22 PDT 2005


Hi,

when using the sync4j outlook connector, umlauts seem to be broken with 
current cvs. The sync4j charset is correctly recognized as iso-85591 as 
can be seen in the following log line

SyncML: authorized=1 version=1 msgid=1 source=sc-pim-outlook
target=http://voltaire.local user=karsten charset=ISO-8859-1

it's the value of $GLOBALS['_HORDE_STRING_CHARSET'].

So I thought the charset conversion would happen automagically somewhere
close to the database. I thought this used to work in early 2005. But 
now it's broken.

Any ideas? Where would be the best place to do the charset conversion?
Maybe add some charset parameter to the various lib/api.php functions?

I'm not sure where the carset conversion should occur. Some options:

1) when invoking lib/api.php functions, data is supossoed to be passed 
in UTF8. Conversion has to be done prior to invoking api functions (in 
the SyncML code)

2) when invoking api functions, data is supossoed to be passed in 
charset $GLOBALS['_HORDE_STRING_CHARSET']. Conversion is done

2a) by the lib/api.php functions themself

2b) by the iCalendar module: input is $GLOBALS['_HORDE_STRING_CHARSET'], 
output is utf8

2c) somewhere else very close to the backend driver...

Any suggestions?

Cheers,
  Karsten


More information about the sync mailing list