aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-01-18 22:54:09 +0000
committertadf <tadf@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-01-18 22:54:09 +0000
commit1d794b933582604fd541479999bc7e3cc3bed0f0 (patch)
tree71f1340cddc75262eb3932b38930e04ca6ff6149
parent6bada9cc0a930c003b2b12892153e373046b7e54 (diff)
downloadruby-1d794b933582604fd541479999bc7e3cc3bed0f0.tar.gz
ext/date/date_strptime.c: moved detector of leftover.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34337 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog4
-rw-r--r--ext/date/date_strptime.c21
2 files changed, 14 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 7ff5026b55..d78b1f81f9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Thu Jan 19 07:53:09 2012 Tadayoshi Funaba <tadf@dotrb.org>
+
+ * ext/date/date_strptime.c: moved detector of leftover.
+
Thu Jan 19 07:10:47 2012 Tadayoshi Funaba <tadf@dotrb.org>
* ext/date/date_parse.c: [ruby-core:42173].
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;