diff --git a/src/xercesc/util/Base64.cpp b/src/xercesc/util/Base64.cpp
index 827a1dcfeac918a7455c5ae702b1b0ee68bf3054..c1e93acd859d68e813b7237b1ec64e08f79995d6 100644
--- a/src/xercesc/util/Base64.cpp
+++ b/src/xercesc/util/Base64.cpp
@@ -325,7 +325,7 @@ XMLByte* Base64::decodeToXMLByte(const XMLCh*         const   inputData
                     ,       MemoryManager* const   memMgr
                     ,       Conformance            conform )
 {
-	if (!inputData)
+	if (!inputData || !*inputData)
 		return 0;
 
     /***
diff --git a/src/xercesc/util/HexBin.cpp b/src/xercesc/util/HexBin.cpp
index 27c7bd53884f6590038387eb9c5751a754e7cd8f..576fac9115961ffe02c51eafd43ce905cc92a520 100644
--- a/src/xercesc/util/HexBin.cpp
+++ b/src/xercesc/util/HexBin.cpp
@@ -53,7 +53,7 @@ bool HexBin::isArrayByteHex(const XMLCh* const hexData)
         init();
 
     if (( hexData == 0 ) || ( *hexData == 0 )) // zero length
-        return false;
+        return true;
 
     int strLen = XMLString::stringLen(hexData);
     if ( strLen%2 != 0 )