diff --git a/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp b/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp
index 06ba6c77ba34253a2478a8fab9203e09ac514e8f..63f0fe45f63a8f97723aafae8911be548172643e 100644
--- a/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp
+++ b/src/xercesc/util/Transcoders/ICU/ICUTransService.cpp
@@ -127,11 +127,11 @@ static UChar* convertToUChar( const   XMLCh* const    toConvert
 
 
 static XMLCh* convertToXMLCh( const UChar* const toConvert,
-                            , MemoryManager* const manager = 0)
+                            MemoryManager* const manager = 0)
 {
     const unsigned int srcLen = u_strlen(toConvert);
     XMLCh* retBuf = (manager)
-        ? (XMLCh*) manager->allocate((srcLen+1) sizeof(XMLCh))
+        ? (XMLCh*) manager->allocate((srcLen+1) * sizeof(XMLCh))
         : new XMLCh[srcLen + 1];
 
     XMLCh* outPtr = retBuf;