summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--ext/date/date_core.c8
-rw-r--r--ext/date/date_strftime.c3
-rw-r--r--ext/date/date_tmx.h2
4 files changed, 12 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 3a8ba7da89..6960dedb09 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Sat Jun 16 18:46:57 2012 Tadayoshi Funaba <tadf@dotrb.org>
+
+ * ext/date/date_tmx.h: offset in struct tmx_funcs is now int.
+ * ext/date/date_strftime.c: ditto.
+ * ext/date/date_core.c: ditto.
+
Sat Jun 16 18:31:46 2012 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (ruby_setup): set running state in the normal case before
diff --git a/ext/date/date_core.c b/ext/date/date_core.c
index d84d14c2bf..783fbd7748 100644
--- a/ext/date/date_core.c
+++ b/ext/date/date_core.c
@@ -6813,10 +6813,10 @@ tmx_m_msecs(union DateData *x)
return s;
}
-static VALUE
+static int
tmx_m_of(union DateData *x)
{
- return INT2FIX(m_of(x));
+ return m_of(x);
}
static char *
@@ -6842,7 +6842,7 @@ static struct tmx_funcs tmx_funcs = {
(VALUE (*)(void *))m_sf_in_sec,
(VALUE (*)(void *))tmx_m_secs,
(VALUE (*)(void *))tmx_m_msecs,
- (VALUE (*)(void *))tmx_m_of,
+ (int (*)(void *))tmx_m_of,
(char *(*)(void *))tmx_m_zone
};
@@ -8650,7 +8650,7 @@ dt_lite_jisx0301(int argc, VALUE *argv, VALUE self)
static VALUE
time_to_time(VALUE self)
{
- return rb_funcall(self, rb_intern("getlocal"), 0);
+ return f_getlocal(self);
}
/*
diff --git a/ext/date/date_strftime.c b/ext/date/date_strftime.c
index b162413b90..87cb0a7ddd 100644
--- a/ext/date/date_strftime.c
+++ b/ext/date/date_strftime.c
@@ -424,8 +424,7 @@ date_strftime_with_tmx(char *s, size_t maxsize, const char *format,
long off, aoff;
int hl, hw;
- off = NUM2LONG(rb_funcall(tmx_offset, rb_intern("round"), 0));
-
+ off = tmx_offset;
aoff = off;
if (aoff < 0)
aoff = -off;
diff --git a/ext/date/date_tmx.h b/ext/date/date_tmx.h
index 0e56c9b4f0..ed06501228 100644
--- a/ext/date/date_tmx.h
+++ b/ext/date/date_tmx.h
@@ -18,7 +18,7 @@ struct tmx_funcs {
VALUE (*sec_fraction)(void *dat);
VALUE (*secs)(void *dat);
VALUE (*msecs)(void *dat);
- VALUE (*offset)(void *dat);
+ int (*offset)(void *dat);
char *(*zone)(void *dat);
};
struct tmx {