XSValue::getActValStrings translates dt_boolean wrong
-----------------------------------------------------
Key: XERCESC-1304
URL: http://nagoya.apache.org/jira/browse/XERCESC-1304
Project: Xerces-C++
Type: Bug
Versions: 2.6.0
Environment: Windows XP Professional
Reporter: Patrick Frants
In the lines (marked with BUG) where retVal->fData.fValue.f_bool is assigned a
boolean value, the *wrong* value is assigned.
XMLUni::fgBooleanValueSpace[0] and XMLUni::fgBooleanValueSpace[2] contain the
values for false.
XMLUni::fgBooleanValueSpace[1] and XMLUni::fgBooleanValueSpace[3] contain the
values for true.
Does anybody actually use this code?
XSValue*
XSValue::getActValStrings(const XMLCh* const content
, DataType datatype
, Status& status
, XMLVersion version
, bool toValidate
, MemoryManager* const manager)
{
try
{
switch (datatype)
{
case XSValue::dt_boolean:
{
//do validation here more efficiently
if (XMLString::equals(content, XMLUni::fgBooleanValueSpace[0])
||
XMLString::equals(content, XMLUni::fgBooleanValueSpace[2])
)
{
XSValue* retVal = new (manager) XSValue(dt_boolean,
manager);
BUG retVal->fData.fValue.f_bool = true;
return retVal;
}
else if (XMLString::equals(content,
XMLUni::fgBooleanValueSpace[1]) ||
XMLString::equals(content,
XMLUni::fgBooleanValueSpace[3]) )
{
XSValue* retVal = new (manager) XSValue(dt_boolean,
manager);
BUG retVal->fData.fValue.f_bool = false;
return retVal;
}
else
{
status = st_FOCA0002;
return 0;
}
}
break;
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]