Xerces 3 revisions.
[shibboleth/cpp-xmltooling.git] / xmltooling / unicode.cpp
index b8deeb3..dc0774c 100644 (file)
 #include <xercesc/util/XMLUTF8Transcoder.hpp>
 #include <xercesc/util/XMLUniDefs.hpp>
 
+using namespace xercesc;
+
 static const XMLCh UTF8[]={ chLatin_U, chLatin_T, chLatin_F, chDigit_8, chNull };
 
 char* xmltooling::toUTF8(const XMLCh* src, bool use_malloc)
 {
-    unsigned int eaten,factor=1,bufsize;
-    unsigned int srclen=XMLString::stringLen(src);
+    xsecsize_t eaten,factor=1,bufsize;
+    xsecsize_t srclen=XMLString::stringLen(src);
     XMLUTF8Transcoder t(UTF8, 4096);    // block size isn't used any more anyway
     do {
         bufsize = factor*srclen + 10;
@@ -63,8 +65,8 @@ char* xmltooling::toUTF8(const XMLCh* src, bool use_malloc)
 
 XMLCh* xmltooling::fromUTF8(const char* src, bool use_malloc)
 {
-    unsigned int eaten;
-    unsigned int srclen=strlen(src);
+    xsecsize_t eaten;
+    xsecsize_t srclen=strlen(src);
     XMLUTF8Transcoder t(UTF8, 4096);    // block size isn't used any more anyway
     XMLCh* buf = use_malloc ? reinterpret_cast<XMLCh*>(malloc((srclen+1)*sizeof(XMLCh))) : new XMLCh[srclen + 1];
     unsigned char* sizes=new unsigned char[srclen];