diff options
author | Grey Baker <greysteil@gmail.com> | 2014-12-23 02:30:00 +0000 |
---|---|---|
committer | Grey Baker <greysteil@gmail.com> | 2014-12-23 02:35:12 +0000 |
commit | d318badc269358c53d9dfb4000e8c4c21a94b578 (patch) | |
tree | 45d9f6492aea1b6416ae48f036d4cd55f3c8ea72 /activerecord/lib | |
parent | d9d865aa40b29b4b5aba71e9f6108eaab7206b1e (diff) | |
download | rails-d318badc269358c53d9dfb4000e8c4c21a94b578.tar.gz rails-d318badc269358c53d9dfb4000e8c4c21a94b578.tar.bz2 rails-d318badc269358c53d9dfb4000e8c4c21a94b578.zip |
Don't raise on out-of-range datetimes passed by a user
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb b/activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb index 87274dd4e1..777f7ab4d7 100644 --- a/activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb +++ b/activerecord/lib/active_record/attribute_methods/time_zone_conversion.rb @@ -12,7 +12,11 @@ module ActiveRecord if value.is_a?(Array) value.map { |v| type_cast_from_user(v) } elsif value.respond_to?(:in_time_zone) - value.in_time_zone || super + begin + value.in_time_zone || super + rescue ArgumentError + nil + end end end |