summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-09-02 08:21:58 +0000
committerusa <usa@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2013-09-02 08:21:58 +0000
commit727d746eaa6389c6992d72318ec004d2681a2efc (patch)
tree0059fe134daf4e2c2b856f01bff7269fd53925c0
parentcc15ebe00eee5110d0c2fcd722c3373c65baae4a (diff)
merge revision(s) 42100: [Backport #8806]
* ext/date/date_parse.c (rfc2822_cb): check if wday is given, since it can be omitted. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_9_3@42774 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--ext/date/date_parse.c4
-rw-r--r--test/date/test_date_parse.rb6
-rw-r--r--version.h8
4 files changed, 18 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 0c844f937c..682e61233d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Mon Sep 2 17:21:47 2013 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * ext/date/date_parse.c (rfc2822_cb): check if wday is given, since it
+ can be omitted.
+
Mon Aug 19 18:36:37 2013 NAKAMURA Usaku <usa@ruby-lang.org>
* test/webrick/test_cgi.rb (TestWEBrickCGI#{start_cgi_server,test_cgi}):
diff --git a/ext/date/date_parse.c b/ext/date/date_parse.c
index 903163003c..7c8267bbab 100644
--- a/ext/date/date_parse.c
+++ b/ext/date/date_parse.c
@@ -2147,7 +2147,9 @@ rfc2822_cb(VALUE m, VALUE hash)
s[i] = rb_reg_nth_match(i, m);
}
- set_hash("wday", INT2FIX(day_num(s[1])));
+ if (!NIL_P(s[1])) {
+ set_hash("wday", INT2FIX(day_num(s[1])));
+ }
set_hash("mday", str2num(s[2]));
set_hash("mon", INT2FIX(mon_num(s[3])));
y = str2num(s[4]);
diff --git a/test/date/test_date_parse.rb b/test/date/test_date_parse.rb
index 1504473938..fc77ebc4ac 100644
--- a/test/date/test_date_parse.rb
+++ b/test/date/test_date_parse.rb
@@ -1028,10 +1028,16 @@ class TestDateParse < Test::Unit::TestCase
d = Date.rfc2822('Sat, 3 Feb 2001 04:05:06 +0700', Date::ITALY + 10)
assert_equal(Date.new(2001,2,3), d)
assert_equal(Date::ITALY + 10, d.start)
+ d = Date.rfc2822('3 Feb 2001 04:05:06 +0700', Date::ITALY + 10)
+ assert_equal(Date.new(2001,2,3), d)
+ assert_equal(Date::ITALY + 10, d.start)
d = DateTime.rfc2822('Sat, 3 Feb 2001 04:05:06 +0700', Date::ITALY + 10)
assert_equal(DateTime.new(2001,2,3,4,5,6,'+07:00'), d)
assert_equal(Date::ITALY + 10, d.start)
+ d = DateTime.rfc2822('3 Feb 2001 04:05:06 +0700', Date::ITALY + 10)
+ assert_equal(DateTime.new(2001,2,3,4,5,6,'+07:00'), d)
+ assert_equal(Date::ITALY + 10, d.start)
end
def test_httpdate
diff --git a/version.h b/version.h
index e55538c157..b673307ecd 100644
--- a/version.h
+++ b/version.h
@@ -1,10 +1,10 @@
#define RUBY_VERSION "1.9.3"
-#define RUBY_PATCHLEVEL 469
+#define RUBY_PATCHLEVEL 470
-#define RUBY_RELEASE_DATE "2013-08-19"
+#define RUBY_RELEASE_DATE "2013-09-02"
#define RUBY_RELEASE_YEAR 2013
-#define RUBY_RELEASE_MONTH 8
-#define RUBY_RELEASE_DAY 19
+#define RUBY_RELEASE_MONTH 9
+#define RUBY_RELEASE_DAY 2
#include "ruby/version.h"