const char *aptr, *eiptr;
char *bptr, *eptr;
long len;
+ int IsUtf8Sequence;
if (((Source == NULL) && (PlainIn == NULL)) || (Target == NULL) )
return -1;
(ch > 126) ||
(ch == 61) ||
(ch == '=') ||
+ (ch == '?') ||
+ (ch == '_') ||
(ch == '[') ||
(ch == ']') )
{
(*target)->BufUsed += 3;
}
else {
- (*target)->buf[(*target)->BufUsed] = ch;
+ if (ch == ' ')
+ (*target)->buf[(*target)->BufUsed] = '_';
+ else
+ (*target)->buf[(*target)->BufUsed] = ch;
(*target)->BufUsed++;
}
}
int n = 0;
unsigned char test = (1<<7);
- if ((*CharS & 0xC0) == 0)
+ if ((*CharS & 0xC0) != 0xC0)
return 1;
while ((n < 8) &&
static inline int Ctdl_IsUtf8SequenceStart(const char Char)
{
/** 11??.???? indicates an UTF8 Sequence. */
- return ((Char & 0xC0) != 0);
+ return ((Char & 0xC0) == 0xC0);
}
/**