diff options
Diffstat (limited to 'ext')
-rw-r--r-- | ext/date/date_core.c | 8 | ||||
-rw-r--r-- | ext/date/date_strftime.c | 3 | ||||
-rw-r--r-- | ext/date/date_tmx.h | 2 |
3 files changed, 6 insertions, 7 deletions
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 { |