diff options
Diffstat (limited to 'ext/date/date_strptime.c')
-rw-r--r-- | ext/date/date_strptime.c | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/ext/date/date_strptime.c b/ext/date/date_strptime.c index 80b9e03278..eaec8e716b 100644 --- a/ext/date/date_strptime.c +++ b/ext/date/date_strptime.c @@ -1,5 +1,5 @@ /* - date_strptime.c: Coded by Tadayoshi Funaba 2011 + date_strptime.c: Coded by Tadayoshi Funaba 2011,2012 */ #include "ruby.h" @@ -641,15 +641,6 @@ date__strptime_internal(const char *str, size_t slen, } } - { - VALUE s; - - if (slen > si) { - s = rb_usascii_str_new(&str[si], slen - si); - set_hash("leftover", s); - } - } - return si; } @@ -657,9 +648,17 @@ VALUE date__strptime(const char *str, size_t slen, const char *fmt, size_t flen, VALUE hash) { + size_t si; VALUE cent, merid; - date__strptime_internal(str, slen, fmt, flen, hash); + si = date__strptime_internal(str, slen, fmt, flen, hash); + + if (slen > si) { + VALUE s; + + s = rb_usascii_str_new(&str[si], slen - si); + set_hash("leftover", s); + } if (fail_p()) return Qnil; |