From 4e3ecec9c76c612facd995031fb1c2a499d5d4c4 Mon Sep 17 00:00:00 2001 From: Geoff Buesing Date: Sat, 16 Feb 2008 20:13:38 +0000 Subject: Refactor ActiveRecord::ConnectionAdapters::Column.new_time: leverage DateTime failover behavior of Time#time_with_datetime_fallback git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8881 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- .../connection_adapters/abstract/schema_definitions.rb | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) (limited to 'activerecord/lib') diff --git a/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb b/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb index f7ee7ac7fd..d30f9b4d32 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_definitions.rb @@ -172,12 +172,8 @@ module ActiveRecord def new_time(year, mon, mday, hour, min, sec, microsec) # Treat 0000-00-00 00:00:00 as nil. return nil if year.nil? || year == 0 - - Time.send(Base.default_timezone, year, mon, mday, hour, min, sec, microsec) - # Over/underflow to DateTime - rescue ArgumentError, TypeError - zone_offset = Base.default_timezone == :local ? DateTime.local_offset : 0 - DateTime.civil(year, mon, mday, hour, min, sec, zone_offset) rescue nil + + Time.time_with_datetime_fallback(Base.default_timezone, year, mon, mday, hour, min, sec, microsec) rescue nil end def fast_string_to_date(string) -- cgit v1.2.3