-rw-r--r-- | library/backend/vobject.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/library/backend/vobject.cpp b/library/backend/vobject.cpp index 9263c3a..592d116 100644 --- a/library/backend/vobject.cpp +++ b/library/backend/vobject.cpp @@ -1105,3 +1105,3 @@ static void writeEncString(OFile *fp, const char *s, bool nosemi) -static bool includesUnprintable(VObject *o) +static bool includesUnprintable(VObject *o, bool nosemi) { @@ -1113,3 +1113,4 @@ static bool includesUnprintable(VObject *o) if (*p==' ' && (!p[1] || p[1]=='\n') // RFC 1521: spaces at ends need quoting - || qpReplaceChar(*p) ) + || qpReplaceChar(*p) + || *p==';' && nosemi ) return TRUE; @@ -1163,3 +1164,3 @@ static void writeAttrValue(OFile *fp, VObject *o) if (pi && ((pi->flags & PD_INTERNAL) != 0)) return; - if ( includesUnprintable(o) ) + if ( includesUnprintable(o,TRUE) ) appendsOFileEncCs(fp); @@ -1231,3 +1232,3 @@ static void writeProp(OFile *fp, VObject *o) VObject *t = isAPropertyOf(o,*fields); - if (includesUnprintable(t)) + if (includesUnprintable(t,TRUE)) printable = FALSE; @@ -1256,3 +1257,3 @@ static void writeProp(OFile *fp, VObject *o) if (VALUE_TYPE(o)) { - if ( includesUnprintable(o) ) + if ( includesUnprintable(o,FALSE) ) appendsOFileEncCs(fp); |