[
https://issues.apache.org/jira/browse/PDFBOX-2420?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15032433#comment-15032433
]
Arjohn Kampman commented on PDFBOX-2420:
----------------------------------------
Great to see a patch for this issue. I had a quick look at the patch and have
one remark:
The javadoc says: "Constrain a timezone offset to the range [-13:59 thru
+13:59] by adding or subtracting multiples of a full day" but the code only
seems to compensate for at most 1 day. To be on the safe side, it might make
sense to change the line for the positive offset to:
addDay = (proposedoffset - 14*MILLIS_PER_HOUR) / DAY + 1;
and for the negative:
addDay = (proposedoffset + 14*MILLIS_PER_HOUR) / DAY - 1;
> DateConverter doesn't handle time zones outside -12 to +12 range properly
> -------------------------------------------------------------------------
>
> Key: PDFBOX-2420
> URL: https://issues.apache.org/jira/browse/PDFBOX-2420
> Project: PDFBox
> Issue Type: Bug
> Components: Utilities
> Affects Versions: 2.0.0
> Reporter: Arjohn Kampman
> Fix For: 2.1.0
>
> Attachments:
> _PDFBOX_2420__Improved_handling_timezones_between__14_and__14_hours_.patch
>
>
> DateConverter normalizes time zones in restrainTZoffset(...) to a value that
> is between -12:00 and +12:00. So a time zone like +13:00 gets normalized to
> -11:00. However, the date itself is not adapted accordingly. As a result, a
> time stamp like "2014-7-20T05:0:00+1300" gets changed to
> "2014-7-20T05:0:00-1100", which is actually 24 hours later! To compensate for
> the time zone change, 24 hours should have been subtracted from the date:
> "2014-7-19T05:0:00-1100".
> Personally, I'd prefer to leave the time zones untouched completely. Note
> that XML Schema defines time zones up to +/- 14:00 to be valid:
> http://www.w3.org/TR/xmlschema-2/#dateTime-timezones. For any time zones out
> of that range either generate an error or consider a garbage-in-garbage-out
> policy.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]