-
Hannu Trey authored
Add an enum argument to DateTimeConfigurationChangeNotification to control whether or not to redetect the host time zone. The default value kSkip doesn't cause redetecting so that callers do not need to change if they want the current behavior (e.g. Chromium). Note that the host time zone detection does not work when v8 is run inside a sandbox as in Chromium so that Chromium detects the host time zone outside the sandbox before calling DateTimeConfigurationChangeNotification. OTOH, other v8 embedders may find it more convenient for v8 to do the host time zone detection on their behalf. In that case, they can call the function with the new argument set to value kRedetect. Test: With PHP+V8Js on linux, execute: php -r ' putenv("TZ=Europe/Helsinki"); $v8 = new V8Js(); $v8->executeString("print((new Date(0)).toString()+\"\\n\");"); putenv("TZ=America/New_York"); $v8->executeString("print((new Date(0)).toString()+\"\\n\");");' Result before modification: Thu Jan 01 1970 02:00:00 GMT+0200 (Eastern European Standard Time) Thu Jan 01 1970 02:00:00 GMT+0200 (Eastern European Standard Time) Result after modification: Thu Jan 01 1970 02:00:00 GMT+0200 (Eastern European Standard Time) Thu Jan 01 1970 02:00:00 GMT+0200 (Eastern European Standard Time) Result after V8JS is modified to use value kRedetect when calling Thu Jan 01 1970 02:00:00 GMT+0200 (Eastern European Standard Time) Wed Dec 31 1969 19:00:00 GMT-0500 (Eastern Standard Time) DateTimeConfigurationChangeNotification: Change-Id: I005192dd42669a94f606a49baa9eafad3475b9fd Reviewed-on: https://chromium-review.googlesource.com/c/1449637Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jungshik Shin <jshin@chromium.org> Commit-Queue: Jungshik Shin <jshin@chromium.org> Cr-Commit-Position: refs/heads/master@{#59613}
f781f522