Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nodejs/node.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/deps
diff options
context:
space:
mode:
authoryangguo@chromium.org <yangguo@chromium.org>2012-10-23 17:04:05 +0400
committerBen Noordhuis <info@bnoordhuis.nl>2012-10-23 18:43:38 +0400
commit9fa953d3e7a864cfce4a69f47cca27d21c124672 (patch)
tree89c4960bd09e8c5b04df6eddcd8ed15886397487 /deps
parent844a0058d0c6815308a0e68192df6a1d6213c68e (diff)
v8: use correct timezone information on Solaris
`timezone` variable contains the difference, in seconds, between UTC and local standard time (see `man 3 localtime` on Solaris). Call to `tzset` is required to apply contents of `TZ` variable to `timezone` variable. BUG=v8:2064 Review URL: https://chromiumcodereview.appspot.com/10967066 Patch from Maciej MaƂecki <me@mmalecki.com>. This is a back-port of upstream commit r12802.
Diffstat (limited to 'deps')
-rw-r--r--deps/v8/src/platform-solaris.cc8
1 files changed, 2 insertions, 6 deletions
diff --git a/deps/v8/src/platform-solaris.cc b/deps/v8/src/platform-solaris.cc
index 4248ea214fa..07718fe50b9 100644
--- a/deps/v8/src/platform-solaris.cc
+++ b/deps/v8/src/platform-solaris.cc
@@ -125,12 +125,8 @@ const char* OS::LocalTimezone(double time) {
double OS::LocalTimeOffset() {
- // On Solaris, struct tm does not contain a tm_gmtoff field.
- time_t utc = time(NULL);
- ASSERT(utc != -1);
- struct tm* loc = localtime(&utc);
- ASSERT(loc != NULL);
- return static_cast<double>((mktime(loc) - utc) * msPerSecond);
+ tzset();
+ return -static_cast<double>(timezone * msPerSecond);
}