[ 
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]

Reply via email to