You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by ca...@apache.org on 2005/07/25 15:41:03 UTC
svn commit: r225119 -
/xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSValue.cpp
Author: cargilld
Date: Mon Jul 25 06:41:01 2005
New Revision: 225119
URL: http://svn.apache.org/viewcvs?rev=225119&view=rev
Log:
Fix various schema date time problems.
Modified:
xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSValue.cpp
Modified: xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSValue.cpp
URL: http://svn.apache.org/viewcvs/xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSValue.cpp?rev=225119&r1=225118&r2=225119&view=diff
==============================================================================
--- xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSValue.cpp (original)
+++ xerces/c/branches/xerces-2.7/src/xercesc/framework/psvi/XSValue.cpp Mon Jul 25 06:41:01 2005
@@ -1174,8 +1174,12 @@
coreDate.parseTime();
return coreDate.getTimeCanonicalRepresentation(manager);
break;
- case XSValue::dt_duration:
case XSValue::dt_date:
+ // we need this parsing
+ coreDate.parseDate();
+ return coreDate.getDateCanonicalRepresentation(manager);
+ break;
+ case XSValue::dt_duration:
case XSValue::dt_gYearMonth:
case XSValue::dt_gYear:
case XSValue::dt_gMonthDay:
@@ -1521,29 +1525,41 @@
break;
case XSValue::dt_date:
coreDate.parseDate();
+ coreDate.fValue[XMLDateTime::Hour] = 0;
+ coreDate.fValue[XMLDateTime::Minute] = 0;
break;
case XSValue::dt_gYearMonth:
coreDate.parseYearMonth();
coreDate.fValue[XMLDateTime::Day] = 0;
+ coreDate.fValue[XMLDateTime::Hour] = 0;
+ coreDate.fValue[XMLDateTime::Minute] = 0;
break;
case XSValue::dt_gYear:
coreDate.parseYear();
coreDate.fValue[XMLDateTime::Month] = 0;
coreDate.fValue[XMLDateTime::Day] = 0;
+ coreDate.fValue[XMLDateTime::Hour] = 0;
+ coreDate.fValue[XMLDateTime::Minute] = 0;
break;
case XSValue::dt_gMonthDay:
coreDate.parseMonthDay();
- coreDate.fValue[XMLDateTime::CentYear] = 0;
+ coreDate.fValue[XMLDateTime::CentYear] = 0;
+ coreDate.fValue[XMLDateTime::Hour] = 0;
+ coreDate.fValue[XMLDateTime::Minute] = 0;
break;
case XSValue::dt_gDay:
coreDate.parseDay();
coreDate.fValue[XMLDateTime::CentYear] = 0;
- coreDate.fValue[XMLDateTime::Month] = 0;
+ coreDate.fValue[XMLDateTime::Month] = 0;
+ coreDate.fValue[XMLDateTime::Hour] = 0;
+ coreDate.fValue[XMLDateTime::Minute] = 0;
break;
case XSValue::dt_gMonth:
coreDate.parseMonth();
coreDate.fValue[XMLDateTime::CentYear] = 0;
coreDate.fValue[XMLDateTime::Day] = 0;
+ coreDate.fValue[XMLDateTime::Hour] = 0;
+ coreDate.fValue[XMLDateTime::Minute] = 0;
break;
default:
return 0;
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org