diff --git a/lib/jekyll/filters.rb b/lib/jekyll/filters.rb index 986bfdee..426ae25d 100644 --- a/lib/jekyll/filters.rb +++ b/lib/jekyll/filters.rb @@ -315,7 +315,7 @@ module Jekyll def time(input) case input when Time - input + input.clone when Date input.to_time when String diff --git a/test/test_filters.rb b/test/test_filters.rb index e9035b96..ab672c54 100644 --- a/test/test_filters.rb +++ b/test/test_filters.rb @@ -103,6 +103,13 @@ class TestFilters < JekyllUnitTest should "format a time according to RFC-822" do assert_equal "Wed, 27 Mar 2013 11:22:33 +0000", @filter.date_to_rfc822(@sample_time) end + + should "not modify a time in-place when using filters" do + t = Time.new(2004, 9, 15, 0, 2, 37, "+01:00") + assert_equal 3600, t.utc_offset + @filter.date_to_string(t) + assert_equal 3600, t.utc_offset + end end context "with Date object" do