On Do, 2011-07-21 at 00:55 +0200, Lukas Zeller wrote:
> On 20.07.2011, at 18:10, Patrick Ohly wrote:
> > I don't think that exists, so my current approach is to have an incoming
> > script which ensures that the PHOTO_VALUE is never empty (sets "binary"
> > if unset) and an outgoing script which strips it again (to emulate
> > current behavior).
> 
> I'd agree this is the way to go.
> 
> > It's not working 100% correctly because for field
> > lists populated with PARSETEXTWITHPROFILE() the incoming script is not
> > executed.
> 
> Maybe we should add an option to PARSETEXTWITHPROFILE() and
> MAKETEXTWITHPROFILE() to have the scripts called?

Turned out SyncEvolution already has the possibility to run scripts
before writing into local storage and after reading from it - exactly
what I need. So now this works in all case for Evolution.

Other backends still need to be adapted to call the same vCard
manipulation scripts.

> > Am I on the right track or should I simply ignore the problem?
> 
> In fact, ignore is what I did so far :-( I've seen the possibility for
> wrong merges as you do, but never encountered them in the field as a
> problem so far.

I guess I am just too paranoid ;-}

Now there is only one other problem with PHOTO uris. They get encoded as
binary data:

PHOTO;VALUE=uri:http://example.com/photo.jpg
=>
PHOTO;ENCODING=B;VALUE=uri:aHR0cDovL2V4YW1wbGUuY29tL3Bob3RvLmpwZw==

Is that because PHOTO is defined as "blob"?

Would it make sense to be selective in the encoder for "blob" and only
use binary encoding if the content contains non-printable characters?

-- 
Best Regards, Patrick Ohly

The content of this message is my personal opinion only and although
I am an employee of Intel, the statements I make here in no way
represent Intel's position on the issue, nor am I authorized to speak
on behalf of Intel on this matter.



_______________________________________________
os-libsynthesis mailing list
[email protected]
http://lists.synthesis.ch/mailman/listinfo/os-libsynthesis

Reply via email to