From 84de2f0d6d20201c90e54a176f24f21c19f8385f Mon Sep 17 00:00:00 2001 From: Martin Fuchs Date: Wed, 30 Nov 2005 11:57:20 +0000 Subject: [PATCH] XML-encode characters below 0x20 svn path=/trunk/; revision=19775 --- reactos/subsys/system/explorer/utility/xmlstorage.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/reactos/subsys/system/explorer/utility/xmlstorage.cpp b/reactos/subsys/system/explorer/utility/xmlstorage.cpp index 7d4431e427e..ef25d97bf1a 100644 --- a/reactos/subsys/system/explorer/utility/xmlstorage.cpp +++ b/reactos/subsys/system/explorer/utility/xmlstorage.cpp @@ -490,7 +490,13 @@ std::string EncodeXMLString(const XS_String& str) break; default: - *o++ = *p; + if ((unsigned)*p<20 && *p!='\t' && *p!='\r' && *p!='\n') { + char b[16]; + sprintf(b, "&%d;", (unsigned)*p); + for(const char*q=b; *q; ) + *o++ = *q++; + } else + *o++ = *p; } #ifdef XS_STRING_UTF8