Bugfix ... remove illegal chars

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@22167 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-Macdonald 2005-12-13 20:56:36 +00:00
parent c9a4123aa0
commit 4e0b7bebcb
2 changed files with 11 additions and 2 deletions

View file

@ -1,6 +1,7 @@
2005-12-13 Richard Frith-Macdonald <rfm@gnu.org>
* Source/Additions/GSXML.m: Fix error parsing date/time in xmlrpc
Remove bad characters when escaping string for xml.
2005-12-07 Richard Frith-Macdonald <rfm@gnu.org>

View file

@ -4114,7 +4114,9 @@ static BOOL warned = NO; if (warned == NO) { warned = YES; NSLog(@"WARNING, use
{
unichar c = from[i];
if (c >= 0x20 || c == 0x9 || c == 0xa || c == 0xd)
if ((c >= 0x20 && c <= 0xd7ff)
|| c == 0x9 || c == 0xd || c == 0xd
|| (c >= 0xe000 && c <= 0xfffd))
{
switch (c)
{
@ -4153,6 +4155,10 @@ static BOOL warned = NO; if (warned == NO) { warned = YES; NSLog(@"WARNING, use
break;
}
}
else
{
escape = YES; // Need to remove bad characters
}
}
if (escape == YES)
@ -4166,7 +4172,9 @@ static BOOL warned = NO; if (warned == NO) { warned = YES; NSLog(@"WARNING, use
{
unichar c = from[i];
if (c >= 0x20 || c == 0x9 || c == 0xa || c == 0xd)
if ((c >= 0x20 && c <= 0xd7ff)
|| c == 0x9 || c == 0xd || c == 0xd
|| (c >= 0xe000 && c <= 0xfffd))
{
switch (c)
{