Re: [Evolution-hackers] error in generated vcalendar + error reading changed tasks/events



On Tue, 2005-03-08 at 21:35 +0100, Armin Bauer wrote:
> 
> JP Rosevear wrote:
> > On Tue, 2005-03-08 at 07:10 +0100, Armin Bauer wrote:
> >
> >>Hi,
> >>
> >>i discovered two bugs:
> >>
> >>The first one is in the way evo2 generates vcalendars:
> >>
> >>Categories get generated as:
> >>CATEGORIES:Birthday\,Business
> >>
> >>but it should be (taken from http://www.ietf.org/rfc/rfc2445.txt):
> >>CATEGORIES:MEETING,PROJECT
> >
> >
> > It appears the rfc is contradicting itself in the examples, see 4.3.11.
> > That shows the "text" grammar type to need escaping of commas and
> > CATEGORIES is of this type, as well:
> >
> >    The "TEXT" property values may also contain special characters that
> >    are used to signify delimiters, such as a COMMA character for lists
> >    of values or a SEMICOLON character for structured values. In order to
> >    support the inclusion of these special characters in "TEXT" property
> >    values, they MUST be escaped with a BACKSLASH character. A BACKSLASH
> >    character (US-ASCII decimal 92) in a "TEXT" property value MUST be
> >    escaped with another BACKSLASH character. A COMMA character in a
> >    "TEXT" property value MUST be escaped with a BACKSLASH character
> >    (US-ASCII decimal 92). A SEMICOLON character in a "TEXT" property
> >    value MUST be escaped with a BACKSLASH character (US-ASCII decimal
> >    92).  However, a COLON character in a "TEXT" property value SHALL NOT
> >    be escaped with a BACKSLASH character.Example: A multiple line value
> >    of:
> >
> 
> actually its not:
> 
>     Type name: CATEGORIES
> 
>     Type purpose: To specify application category information about the
>     vCard.

>     Type encoding: 8bit
> 
>     Type value: One or more text values separated by a COMMA character
>     (ASCII decimal 44).

Hmm, the above block is indeed a little confusing.  Let me state what
i'm seeing:

It says that "TEXT" property values may include a COMMA for a delimiter
but that in order to include a COMMA in a "TEXT" property they must be
escaped.  What they really want to say I guess is that they want to
delimit blocks of "text", as defined in the abnf notation:      text
= *(TSAFE-CHAR / ":" / DQUOTE / ESCAPED-CHAR))

with a comma, ie :text,text,text to make up a TEXT property value as a
whole.

Anyhow, I think whats really happening is that Evolution wants to use
the CATEGORIES as a whole single string and breaks it up in the UI
itself.  The \, means we are treating the categories as a single block
rather a delimited list, that is valid icalendar, if a bit unusual.

>     Type example:
> 
>          CATEGORIES:TRAVEL AGENT
> 
>          CATEGORIES:INTERNET,IETF,INDUSTRY,INFORMATION TECHNOLOGY
> 
> so this would be valid: sometext\,,somemoretext
> 
> i know that the standard is just plain stupid at this point since the
> categories is the only occasion they are using a comma
> 
> and besides... even the evolution2 vcard parser is expecting the
> categories with an unescaped comma :)
> 
> >
> >
> >>The second one is that when i add several tasks/events, request them via
> >>e_cal_get_changes, delete all of them and request again using
> >>e_cal_get_changes the returned GList will contain more items than delete
> >>d and the additional items look like random memory locations. I attached
> >>the code that produces this result. I took a look at the bug database
> >>and there are quite some bugs which reporting crashing etc when deleting
> >>tasks/events, so maybe this is related.
> >
> >
> > Probably unrelated, but it might help against some pilot bugs.  What is
> > the exactly version you are coding against?
> 
> ii  evolution      2.0.4-0.1      The groupware suite
> ii  evolution-data 1.0.4-0.1      evolution database backend server
> 
> entry 20050308T203113Z-6966-1000-6736-0 azrael
> entry 20050308T203113Z-6966-1000-6736-1 azrael
> entry 20050308T203002Z-6781-1000-1-1 azrael
> entry 20050308T203113Z-6966-1000-6736-2 azrael
> entry 20050308T203002Z-6781-1000-1-2 azrael
> entry 20050307T183359Z-32171-1000-1-42 azrael
> 
> Note that i deleted 3 tasks (the ones with *1000-1*)

Have you looked at the .xml file on disk to see if thats being updated
properly?

-JP
-- 
JP Rosevear <jpr novell com>
Novell, Inc.




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