diff options
author | Ryuta Kamizono <kamipo@gmail.com> | 2014-11-27 10:06:49 +0900 |
---|---|---|
committer | Ryuta Kamizono <kamipo@gmail.com> | 2014-12-12 00:35:48 +0900 |
commit | b61a93b44e11046cc28605a8b4d2d17fe89927fd (patch) | |
tree | 7d1637c5fecfdca42f2edd32d1aa154f5aa8b04b /activerecord/lib/active_record/type/integer.rb | |
parent | 6961afefd2f163f30b9ae3aacb74b290287f9a80 (diff) | |
download | rails-b61a93b44e11046cc28605a8b4d2d17fe89927fd.tar.gz rails-b61a93b44e11046cc28605a8b4d2d17fe89927fd.tar.bz2 rails-b61a93b44e11046cc28605a8b4d2d17fe89927fd.zip |
Fix undesirable RangeError by Type::Integer. Add Type::UnsignedInteger.
Diffstat (limited to 'activerecord/lib/active_record/type/integer.rb')
-rw-r--r-- | activerecord/lib/active_record/type/integer.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/type/integer.rb b/activerecord/lib/active_record/type/integer.rb index 750f353472..fc260a081a 100644 --- a/activerecord/lib/active_record/type/integer.rb +++ b/activerecord/lib/active_record/type/integer.rb @@ -5,7 +5,7 @@ module ActiveRecord def initialize(*) super - @range = -max_value...max_value + @range = min_value...max_value end def type @@ -46,6 +46,10 @@ module ActiveRecord limit = self.limit || 4 1 << (limit * 8 - 1) # 8 bits per byte with one bit for sign end + + def min_value + -max_value + end end end end |