On 30.06.2015 21:13, Hruda, Steve wrote:
Hi Anton,
thanks for the detailed information and the good news.

You talk about JDK's jira? Am I right? ..... I don't have an access for that 
JIRA system since the JavaFX's Jira has moved to the JDK Bug System.

Ah, ok. Then I'll quote your e-mail.


About the Apple stuff.
I know that Apple dropped Windows Safari support and in my opinion is this a 
very bad situation for WebKit (in case of Windows).... and especially since 
Google and Opera using Google's Blink engine.

In case of the JDK it would be more practicable to switch from WebKit to Blink, 
because this engine is still used by Companies which have Windows end-users.

There is a high probability that WebKit get more such bugs if there is no big 
player like Google or Apple who has the man power to fix such OS dependent 
issues.

I see. However, switching to Blink is another story. Honestly, we're not planning it in the nearest future. This requires extra resources which we don't have at the moment...


Last questions:
Do you need any additional information from my side? And is it possible to 
integrate this fix in 8u60?

From my side, I'll do a sanity check with WebKit LayoutTests, then if it goes well, we can consider commiting this to 8u60.

@Kevin, do you think we can?

Also, as an option for you (Steve). You can post the changes to the WebKit alias and ask if they think this is a valid fix for the issue. Any confirmation from the WebKit team would help us to make sure the fix is reliable.

Thanks!
Anton.


Thanks in advance!
Best Regards,
Steve




Diese E-Mail wurde versandt im Auftrag des Unternehmens Intergraph Ges.m.b.H.
Vertretungsberechtigte Geschäftsführer: Maximilian Weber
Sitz der Gesellschaft: Margaretenstraße 70/I/1, 1050 Wien, Österreich, Tel. +43 
(1) 9610567-0
Eingetragen beim Handelsgericht Wien, Firmenbuch-Nr.: FN 116859 b
Umsatzsteuer-Identifikationsnummer / VAT-ID: ATU15138401, Steuer-Nummer: 
264/4807

This E-Mail has been sent on behalf of the company Intergraph Ges.m.b.H.
Authorised Managing Directors: Maximilian Weber
Registered office and Austrian headquarters: Margaretenstr. 70/I/1, 1050 Wien, 
Austria, Tel. +43 (1) 9610567-0
The company is recorded at the commercial court of Vienna under the company 
register number FN 116859 b
VAT-ID: ATU15138401, Austrian Tax ID: 264/4807

Diese E-Mail (mit zugehörigen Dateien) enthält möglicherweise Informationen, 
die vertraulich sind, dem Urheberrecht unterliegen oder ein Geschäftsgeheimnis 
darstellen. Falls Sie diese Nachricht irrtümlicherweise erhalten haben, 
benachrichtigen Sie uns bitte umgehend, indem Sie eine Antwort senden, und 
löschen Sie bitte diese E-Mail und Ihre Antwort darauf. Sämtliche aufgeführten 
Ansichten oder Meinungen sind ausschließlich diejenigen des Autors und 
entsprechen nicht notwendigerweise denen des Unternehmens Intergraph.

This E-Mail (and any attachments) may be confidential and protected by legal 
privilege. If you are not the intended recipient please notify us immediately 
by replying to the sender and delete this E-Mail and your reply from your 
system. All the views and opinions published here are solely based on the 
author's own opinion and should not be considered necessarily as reflecting the 
opinion of Intergraph.


-----Original Message-----
From: Anton V. Tarasov [mailto:anton.tara...@oracle.com]
Sent: Tuesday, June 30, 2015 8:01 PM
To: Hruda, Steve; Kevin Rushforth
Cc: openjfx-dev@openjdk.java.net
Subject: Re: Patch for JDK-8090098 - [regression] Webview - getTimezoneOffset() 
of a ISO strings returns a wrong value

Steve,

I applied your suggestion and it worked on Windows.

The missed check you discovered could really be a mistake in WebKit, because 
Apple dropped releasing (and shipping nightly builds for) Safari for Windows at 
2012.
Safari 5.1.7 was the last version. I downloaded and checked it. The date bug is 
not reproducible with it, but this gives us almost nothing taking into account 
the version is much outdated.

So that Windows code path might not have been well tested, since
http://trac.webkit.org/changeset/159892 was commited...

(WebKit Win port is still supported and can be built on your own.)

What I can do else to verify the changes is to run WebKit LayoutTests aimed at 
date testing and see if there're no regressions.

Also, please put the info you posted into JIRA.

Regards,
Anton.

On 29.06.2015 21:42, Anton Tarasov wrote:
Hi Steve,

Ok, I'll investigate it.

Thanks,
Anton.

On 29.06.2015 18:39, Hruda, Steve wrote:
Hi Anton & Kevin,

we read your comments in the JDK bug system and analyzed WebKit's changesets 
again.

We’ve found the code which made this regression.

http://trac.webkit.org/changeset/159892

This changeset doesn't handle one special case, which was handled by the 
previous code....

double diff = ((localSystemTime.wHour - offsetHour) * secondsPerHour)
+ ((localSystemTime.wMinute
- offsetMinute) *60);


(http://trac.webkit.org/browser/trunk/Source/WTF/wtf/DateMath.cpp?ann
otate=blame#L481 )

The diff is wrong if the calculated the offsetTime is one day before
in case of the extreme values (e.g. midnight) where the offsetHour of the UTC 
time is  23 because of the day difference.

In case of all other OS systems you will see the same code ->
http://trac.webkit.org/browser/trunk/Source/WTF/wtf/DateMath.cpp?anno
tate=blame#L495

But there are  two additional lines ->  497 & 497 which fixes this
special case…

*if*(diff<0)

   diff += secondsPerDay;


That means ….

localSystemTime.wHour = 0;

offsetHour=23 … which causes a negative value … and the
diff+=secondsPerDay ensures that the diff result would be one Hour
instead of -23 hours

We’ve found the attached V8DateTests.js (renamed to .txt) and
adjusted it a little bit to get the results logged in the browsers console.

As you can see at “ResulBeforeOurBugFix.txt” and
“ResultAfterOurBugFix.txt”, we were able to fix
6 tests which failed before out bug fix.

assertEquals("Sat Oct 25 2014 23:00:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 9, 25, 23, 0)).toString());

   assertEquals("Sat, 25 Oct 2014 21:00:00 GMT",

                (new Date(2014, 9, 25, 23, 0)).toUTCString());

   assertEquals("Sat Oct 25 2014 23:59:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 9, 25, 23, 59)).toString());

   assertEquals("Sat, 25 Oct 2014 21:59:00 GMT",

                (new Date(2014, 9, 25, 23, 59)).toUTCString());

   assertEquals("Sun Oct 26 2014 00:00:00 GMT+0200 (W. Europe Daylight
Time)",

               (new Date(2014, 9, 26, 0, 0)).toString());

assertEquals("Sun Oct 26 2014 00:59:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 9, 26, 0, 59)).toString());

In addition we found out that WebKit also have problems in case of
Windows in case of the change from winter to summer time.

*_Winter to summer time:_*

assertEquals("Sun Mar 30 2014 03:00:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 2, 30, 2, 0)).toString());

   assertEquals("Sun, 30 Mar 2014 01:00:00 GMT",

                (new Date(2014, 2, 30, 2, 0)).toUTCString());

   assertEquals("Sun Mar 30 2014 03:59:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 2, 30, 2, 59)).toString());

   assertEquals("Sun, 30 Mar 2014 01:59:00 GMT",

                (new Date(2014, 2, 30, 2, 59)).toUTCString());

*_Summer to winter time:_*

assertEquals("Sun Oct 26 2014 02:00:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 9, 26, 2, 0)).toString());

   assertEquals("Sun, 26 Oct 2014 00:00:00 GMT",

                (new Date(2014, 9, 26, 2, 0)).toUTCString());

   assertEquals("Sun Oct 26 2014 02:59:00 GMT+0200 (W. Europe Daylight
Time)",

                (new Date(2014, 9, 26, 2, 59)).toString());

   assertEquals("Sun, 26 Oct 2014 00:59:00 GMT",

                (new Date(2014, 9, 26, 2, 59)).toUTCString());

We will try to find a solution for that, but I think that the
priority of this issue is lower than the priority of the opened regression.

It would be amazing if you can add the patch of my previous and these
additional two lines
(DateMath.cpp) to the JDK8u60.

Best Regards,

Steve


Diese E-Mail wurde versandt im Auftrag des Unternehmens Intergraph Ges.m.b.H.
Vertretungsberechtigte Geschäftsführer: Maximilian Weber Sitz der
Gesellschaft: Margaretenstraße 70/I/1, 1050 Wien, Österreich, Tel.
+43 (1) 9610567-0 Eingetragen beim Handelsgericht Wien,
Firmenbuch-Nr.: FN 116859 b Umsatzsteuer-Identifikationsnummer /
VAT-ID: ATU15138401, Steuer-Nummer: 264/4807

This E-Mail has been sent on behalf of the company Intergraph Ges.m.b.H.
Authorised Managing Directors: Maximilian Weber Registered office and
Austrian headquarters: Margaretenstr. 70/I/1, 1050 Wien, Austria,
Tel. +43
(1) 9610567-0
The company is recorded at the commercial court of Vienna under the
company register number FN
116859 b
VAT-ID: ATU15138401, Austrian Tax ID: 264/4807

Diese E-Mail (mit zugehörigen Dateien) enthält möglicherweise
Informationen, die vertraulich sind, dem Urheberrecht unterliegen
oder ein Geschäftsgeheimnis darstellen. Falls Sie diese Nachricht
irrtümlicherweise erhalten haben, benachrichtigen Sie uns bitte
umgehend, indem Sie eine Antwort senden, und löschen Sie bitte diese
E-Mail und Ihre Antwort darauf. Sämtliche aufgeführten Ansichten oder Meinungen 
sind ausschließlich diejenigen des Autors und entsprechen nicht 
notwendigerweise denen des Unternehmens Intergraph.

This E-Mail (and any attachments) may be confidential and protected
by legal privilege. If you are not the intended recipient please
notify us immediately by replying to the sender and delete this
E-Mail and your reply from your system. All the views and opinions
published here are solely based on the author's own opinion and should not be 
considered necessarily as reflecting the opinion of Intergraph.

-----Original Message-----

From: openjfx-dev [mailto:openjfx-dev-boun...@openjdk.java.net] On
Behalf Of Hruda, Steve

Sent: Tuesday, June 23, 2015 6:26 PM

To: Anton V. Tarasov; Kevin Rushforth

Cc: openjfx-dev@openjdk.java.net

Subject: RE: Patch for JDK-8090098 - [regression] Webview -
getTimezoneOffset() of a ISO strings returns a wrong value

Very cool Anton.

I would be great if that pach could be added to 8u60, otherwise our
all our customers have to avoid Java 8u60.

Regards,

Steve

Diese E-Mail wurde versandt im Auftrag des Unternehmens Intergraph Ges.m.b.H.

Vertretungsberechtigte Geschäftsführer: Maximilian Weber Sitz der
Gesellschaft: Margaretenstraße 70/I/1, 1050 Wien, Österreich, Tel.
+43 (1) 9610567-0 Eingetragen beim Handelsgericht Wien,
Firmenbuch-Nr.: FN 116859 b Umsatzsteuer-Identifikationsnummer /
VAT-ID: ATU15138401,
Steuer-Nummer: 264/4807

This E-Mail has been sent on behalf of the company Intergraph Ges.m.b.H.

Authorised Managing Directors: Maximilian Weber Registered office and Austrian 
headquarters:
Margaretenstr. 70/I/1, 1050 Wien, Austria, Tel. +43 (1) 9610567-0 The
company is recorded at the commercial court of Vienna under the
company register number FN 116859 b

VAT-ID: ATU15138401, Austrian Tax ID: 264/4807

Diese E-Mail (mit zugehörigen Dateien) enthält möglicherweise
Informationen, die vertraulich sind, dem Urheberrecht unterliegen
oder ein Geschäftsgeheimnis darstellen. Falls Sie diese Nachricht
irrtümlicherweise erhalten haben, benachrichtigen Sie uns bitte
umgehend, indem Sie eine Antwort senden, und löschen Sie bitte diese
E-Mail und Ihre Antwort darauf. Sämtliche aufgeführten Ansichten oder Meinungen 
sind ausschließlich diejenigen des Autors und entsprechen nicht 
notwendigerweise denen des Unternehmens Intergraph.

This E-Mail (and any attachments) may be confidential and protected
by legal privilege. If you are not the intended recipient please
notify us immediately by replying to the sender and delete this
E-Mail and your reply from your system. All the views and opinions
published here are solely based on the author's own opinion and should not be 
considered necessarily as reflecting the opinion of Intergraph.

-----Original Message-----

From: Anton V. Tarasov [mailto:anton.tara...@oracle.com]

Sent: Tuesday, June 23, 2015 5:46 PM

To: Kevin Rushforth; Hruda, Steve

Cc: openjfx-dev@openjdk.java.net

Subject: Re: Patch for JDK-8090098 - [regression] Webview -
getTimezoneOffset() of a ISO strings returns a wrong value

On 23.06.2015 17:48, Kevin Rushforth wrote:

Hi Steve,
Thank you for taking the time to create this patch. I will add this information 
to the bug report.
Since your OCA is in progress we will take a look at your patch,
but
will need indication from the OCA office that it the OCA has been
received before we could push it. And just to be clear, you won't
have
access to the repository even with an OCA. What the OCA will do is
allow you to contribute
patches.

I will note that it is likely too late for 8u60, but Anton can
evaluate it and post his comment in the bug report.
Kevin,

I'm checking it.

Steve, thanks for the participation!

Regards,

Anton.

-- Kevin
Hruda, Steve wrote:
Hi,
I've created a 8u-dev patch for the following WeKit regression which comes with 
8u60.
https://bugs.openjdk.java.net/browse/JDK-8090098
Please can someone of you apply this patch to fix the
getTimezoneOffset() issue. I have no access to the repository -> my OCA is 
still pending.
In addition I tried to test this patch , but I wasn't able to
build
the necessary jfxwebkit.dll on my windows system
(https://www.mail-archive.com/openjfx-dev@openjdk.java.net/msg0943
9.h
tml )..... but I got no compile erros on Mac.
Patch download:
https://drive.google.com/file/d/0B7P_rknS1TWxM3BSTTU2OVZ4dGM/view?u
sp
=sharing
The patch includes the following WebKit fixes:
Changeset 174377  - [Win] DateMath's calculateUTFOffset does not account for 
DST.
http://trac.webkit.org/changeset/174377
Changeset 175078  - String(new Date(Mar 30 2014 01:00:00)) is
wrong
in CET
http://trac.webkit.org/changeset/175078
Changeset 181360 - [Win] 17 different JSC tests started to fail in
DST
http://trac.webkit.org/changeset/181360
Please let me know if you need further information.
Thanks in advance!
Best Regards
Steve
Diese E-Mail wurde versandt im Auftrag des Unternehmens Intergraph Ges.m.b.H.
Vertretungsberechtigte Geschäftsführer: Maximilian Weber Sitz der
Gesellschaft: Margaretenstraße 70/I/1, 1050 Wien, Österreich, Tel.
+43 (1) 9610567-0 Eingetragen beim Handelsgericht Wien,
Firmenbuch-Nr.: FN 116859 b Umsatzsteuer-Identifikationsnummer /
VAT-ID: ATU15138401, Steuer-Nummer: 264/4807
This E-Mail has been sent on behalf of the company Intergraph Ges.m.b.H.
Authorised Managing Directors: Maximilian Weber Registered office
and
Austrian headquarters: Margaretenstr. 70/I/1, 1050 Wien, Austria,
Tel. +43
(1) 9610567-0
The company is recorded at the commercial court of Vienna under
the
company register number FN
116859 b
VAT-ID: ATU15138401, Austrian Tax ID: 264/4807
Diese E-Mail (mit zugehörigen Dateien) enthält möglicherweise
Informationen, die vertraulich sind, dem Urheberrecht unterliegen
oder ein Geschäftsgeheimnis darstellen. Falls Sie diese Nachricht
irrtümlicherweise erhalten haben, benachrichtigen Sie uns bitte
umgehend, indem Sie eine Antwort senden, und löschen Sie bitte
diese
E-Mail und Ihre Antwort darauf. Sämtliche aufgeführten Ansichten
oder Meinungen sind
ausschließlich diejenigen des Autors und entsprechen nicht
notwendigerweise denen des Unternehmens Intergraph.

This E-Mail (and any attachments) may be confidential and
protected
by legal privilege. If you are not the intended recipient please
notify us immediately by replying to the sender and delete this
E-Mail and your reply from your system. All the views and opinions
published here are solely based on the author's own opinion and
should not be considered
necessarily as reflecting the opinion of Intergraph.


Reply via email to