Bug #4254
closedadjust-time-to-timezone(xs:time("18:25:29.900005Z"), ()) delivers "18:25:29."
100%
Description
adjust-time-to-timezone(xs:time("18:25:29.900005Z"), ()
) delivers 18:25:29.
There are two issues here: (a) the loss of precision, and (b) the trailing full stop in the string representation.
Updated by Michael Kay almost 5 years ago
The first problem is caused by the code internally using the constructor that expects microseconds rather than nanoseconds.
The second problem is a side-effect of the fact that due to arithmetic overflow, the number of nanoseconds held in the value is negative.
I have changed a number of places that used the old microsecond contstructor to use the new nanosecond constructor in its place. In most cases the only adverse consequence was a loss of precision, e.g. when converting xs:dateTime to xs:time.
Updated by O'Neil Delpratt over 4 years ago
- Fix Committed on Branch 9.9, trunk added
Updated by O'Neil Delpratt over 4 years ago
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
- Fixed in Maintenance Release 9.9.1.5 added
Bug fix applied in the Saxon 9.9.1.5 maintenance release.
Please register to edit this issue