UTF-8



Hi,

There was a problem with GConf where it would save XML files
containing the locale encoding, which is of course not valid XML, and
moreover means the files are no good, because a regedit-type tool
can't display strings if it doesn't know their
encoding. i.e. essentially it means all the strings in GConf were
uninterpretable binary blobs.

There were two possible fixes for this. One would base64-encode the
strings in the XML files. This would render the XML files basically
illegible to humans, and also mean that an admin tool wouldn't know
how to display the GConf string type.

So instead, I've declared that the GConf string type is UTF-8. 
gconf_engine_set_string() etc. will return an error if you try to set
a string which isn't. Also, schema files must be in UTF-8 (already
known since they are in XML, I suppose).

If there's demand for it, we can add a GCONF_VALUE_TYPE_BYTES or
something later, for binary data, and base64 encode that.

I don't think this will break many apps in practice; if it does, I've
tagged the CVS tree prior to the change, so we can revert.

I'm going to release GConf soon with this change and the avoid-OAF
change, so again, I'd really appreciate testing of the current CVS
version.

Havoc




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]