aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/lib
diff options
context:
space:
mode:
authorYves Senn <yves.senn@gmail.com>2014-06-24 16:33:17 +0200
committerYves Senn <yves.senn@gmail.com>2014-06-24 16:33:17 +0200
commitc2b02d00ae4471ba93be4858a91741d8a7afe9c4 (patch)
treec98c18bbbe58fe6f1bfe3835e920e249aebb7190 /activerecord/lib
parent1a299f1df2f97e66779f37370bcc4306843a8390 (diff)
parent50fa366783c2403d909a6fa5b7fc6d4c7fdacf7f (diff)
downloadrails-c2b02d00ae4471ba93be4858a91741d8a7afe9c4.tar.gz
rails-c2b02d00ae4471ba93be4858a91741d8a7afe9c4.tar.bz2
rails-c2b02d00ae4471ba93be4858a91741d8a7afe9c4.zip
Merge pull request #15895 from sgrif/sg-numeric-changes
Always assume strings with non-numeric characters change numeric types
Diffstat (limited to 'activerecord/lib')
-rw-r--r--activerecord/lib/active_record/type/numeric.rb6
1 files changed, 3 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/type/numeric.rb b/activerecord/lib/active_record/type/numeric.rb
index a7bf0657b9..fa43266504 100644
--- a/activerecord/lib/active_record/type/numeric.rb
+++ b/activerecord/lib/active_record/type/numeric.rb
@@ -16,13 +16,13 @@ module ActiveRecord
end
def changed?(old_value, _new_value, new_value_before_type_cast) # :nodoc:
- super || zero_to_non_number?(old_value, new_value_before_type_cast)
+ super || number_to_non_number?(old_value, new_value_before_type_cast)
end
private
- def zero_to_non_number?(old_value, new_value_before_type_cast)
- old_value == 0 && non_numeric_string?(new_value_before_type_cast)
+ def number_to_non_number?(old_value, new_value_before_type_cast)
+ old_value != nil && non_numeric_string?(new_value_before_type_cast)
end
def non_numeric_string?(value)