summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-04-22 02:13:44 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-04-22 02:13:44 +0000
commitf21673285f377a42ebf6b94be18ef0c689f09af4 (patch)
tree660cfcc20c9f3eb30cdfc13520b4cb2f40c39931
parent9a467ddc57112e8b94ffd5777b7bb9bbc4d5415b (diff)
downloadruby-f21673285f377a42ebf6b94be18ef0c689f09af4.tar.gz
ruby-f21673285f377a42ebf6b94be18ef0c689f09af4.tar.xz
ruby-f21673285f377a42ebf6b94be18ef0c689f09af4.zip
* time.c (GMTIME, LOCALTIME): should set result if not have *_r().
* time.c (localtime_with_gmtoff): now always needed tmbuf. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@23256 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog6
-rw-r--r--time.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 7370fcc80..659399fd7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Wed Apr 22 11:12:15 2009 NAKAMURA Usaku <usa@ruby-lang.org>
+
+ * time.c (GMTIME, LOCALTIME): should set result if not have *_r().
+
+ * time.c (localtime_with_gmtoff): now always needed tmbuf.
+
Wed Apr 22 10:38:47 2009 NAKAMURA Usaku <usa@ruby-lang.org>
* dir.c (glob_helper): C99(gcc)-ism.
diff --git a/time.c b/time.c
index a0e06148c..68f26aa3c 100644
--- a/time.c
+++ b/time.c
@@ -73,8 +73,8 @@ static int leap_year_p(long y);
#else
#define IF_HAVE_GMTIME_R(x) /* nothing */
#define ASCTIME(tm, buf) asctime(tm)
-#define GMTIME(tm, result) gmtime(tm)
-#define LOCALTIME(tm, result) localtime(tm)
+#define GMTIME(tm, result) (result = *gmtime(tm), &result)
+#define LOCALTIME(tm, result) (result = *localtime(tm), &result)
#endif
static ID id_divmod, id_mul, id_submicro, id_subnano;
@@ -908,7 +908,7 @@ localtime_with_gmtoff(const time_t *t, struct tm *result, long *gmtoff)
#else
struct tm *u, *l;
long off;
- IF_HAVE_GMTIME_R(struct tm tmbuf);
+ struct tm tmbuf;
l = &tm;
u = GMTIME(t, tmbuf);
if (!u)