summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--library/backend/vobject.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/library/backend/vobject.cpp b/library/backend/vobject.cpp
index 2f22c20..2c5b577 100644
--- a/library/backend/vobject.cpp
+++ b/library/backend/vobject.cpp
@@ -1020,41 +1020,53 @@ static const char *replaceChar(unsigned char c)
||
(c >= '+' && c <= '-')
||
(c == '/')
||
(c == '?')
||
(c == ' '))
{
return 0;
}
+#warning "Bug-Workaround must be fixed !"
+ // IF THIS FUNCTION RETURNES TRUE, THE DATA IS EXPORTED
+ // AS QUOTED PRINTABLE.
+ // BUT THE PARSER IS UNABLE TO IMPORT THIS, THEREFORE
+ // I DECIDED TO DISABLE IT UNTIL TROLLTECH FIXES THIS BUG
+ // SEE ALSO includesUnprintable(VObject *o)
+ // (se)
+
+ return 0;
+
+#if 0
static char trans[4];
trans[0] = '=';
trans[3] = '\0';
int rem = c % 16;
int div = c / 16;
if (div < 10)
trans[1] = '0' + div;
else
trans[1] = 'A' + (div - 10);
if (rem < 10)
trans[2] = '0' + rem;
else
trans[2] = 'A' + (rem - 10);
return trans;
+#endif
}
static void writeQPString(OFile *fp, const char *s)
{
/*
only A-Z, 0-9 and
"'" (ASCII code 39)
"(" (ASCII code 40)
")" (ASCII code 41)
"+" (ASCII code 43)
"," (ASCII code 44)
"-" (ASCII code 45)
@@ -1070,36 +1082,50 @@ static void writeQPString(OFile *fp, const char *s)
while (*p) {
const char *rep = replaceChar(*p);
if (rep)
appendsOFile(fp, rep);
else
appendcOFile(fp, *p);
p++;
}
}
static bool includesUnprintable(VObject *o)
{
+
+#if 0
+
+ // IF THIS FUNCTION RETURNES TRUE, THE DATA IS EXPORTED
+ // AS QUOTED PRINTABLE.
+ // BUT THE PARSER IS UNABLE TO IMPORT THIS, THEREFORE
+ // I DECIDED TO DISABLE IT UNTIL TROLLTECH FIXES THIS BUG
+ // SEE ALSO *replaceChar(unsigned char c)
+ // (se)
+
if (o) {
if (VALUE_TYPE(o) == VCVT_STRINGZ) {
const char *p = STRINGZ_VALUE_OF(o);
if (p) {
while (*p) {
if (replaceChar(*p))
return TRUE;
p++;
}
}
}
}
+
+#endif
+#warning "Bug-Workaround must be fixed !"
+
return FALSE;
}
static void writeVObject_(OFile *fp, VObject *o);
static void writeValue(OFile *fp, VObject *o, unsigned long size)
{
if (o == 0) return;
switch (VALUE_TYPE(o)) {
case VCVT_STRINGZ: {
writeQPString(fp, STRINGZ_VALUE_OF(o));
break;