8th
Fri
Ruby-1.8.7 p71にアップデート
Rubyに複数の脆弱性が発見されました。最新バージョンへのアップグレードを推奨します。
ということで、EC2で使ってるRubyをruby 1.8.7 (2008-08-08
よろしくお願いします。
Rubyに複数の脆弱性が発見されました。最新バージョンへのアップグレードを推奨します。
ということで、EC2で使ってるRubyをruby 1.8.7 (2008-08-08
よろしくお願いします。
Redmineで2203年の予定を立てようとしたところ、エラーが出たので原因を調べていました。
どうやら、Railsのdistance_o
でエラーが出ているようです。
1 def distance_of_time_in_ words( 2 from_time, to_time = 0, include_se conds = false) 3 from_time = from_time. to_time if 4 from_time. respond_to ?(:to_time) 5 to_time = to_time.to_time if 6 to_time.respond_to ?(:to_time) 7 distance_i n_minutes = 8 (((to_time - from_time).abs)/60).round 9 distance_i n_seconds = 10 ((to_time - from_time).abs).round
8行目あたりの減算でエラーが出ているようです。 実際、以下のような減算をしようとするとエラーが出ます。
1 Time.now - Date.parse("Mon, 01 Aug 2203").to_time 2 #=> RangeError: time - 7371010800 .000000 out of Time range
ということで、あまりにも長い時間である場合には、 以下のような例外処理で対処するようにしました。
1 module ActionView2 module Helpers 3 module DateHelper 4 def distance_o f_time_in_ words_with _limit( 5 from_time, to_time = 0, include_se conds = false 6 ) 7 distance_o f_time_in_ words_with out_limit( 8 from_time, to_time, include_se conds) 9 rescue 10 'a long time' 11 end 12 alias_meth od_chain :distance_o f_time_in_ words, :limit 13 end 14 end 15 end
これで23世紀の予定も思いのままです。