Fixed that #reload raises a Stack too deep error with ruby 2.0.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11497 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
f544dd682b
commit
5c1e1ee4bb
|
@ -184,11 +184,12 @@ class Issue < ActiveRecord::Base
|
||||||
super
|
super
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias :base_reload :reload
|
||||||
def reload(*args)
|
def reload(*args)
|
||||||
@workflow_rule_by_attribute = nil
|
@workflow_rule_by_attribute = nil
|
||||||
@assignable_versions = nil
|
@assignable_versions = nil
|
||||||
@relations = nil
|
@relations = nil
|
||||||
super
|
base_reload(*args)
|
||||||
end
|
end
|
||||||
|
|
||||||
# Overrides Redmine::Acts::Customizable::InstanceMethods#available_custom_fields
|
# Overrides Redmine::Acts::Customizable::InstanceMethods#available_custom_fields
|
||||||
|
|
|
@ -285,6 +285,7 @@ class Project < ActiveRecord::Base
|
||||||
self.find(*args)
|
self.find(*args)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias :base_reload :reload
|
||||||
def reload(*args)
|
def reload(*args)
|
||||||
@shared_versions = nil
|
@shared_versions = nil
|
||||||
@rolled_up_versions = nil
|
@rolled_up_versions = nil
|
||||||
|
@ -297,7 +298,7 @@ class Project < ActiveRecord::Base
|
||||||
@actions_allowed = nil
|
@actions_allowed = nil
|
||||||
@start_date = nil
|
@start_date = nil
|
||||||
@due_date = nil
|
@due_date = nil
|
||||||
super
|
base_reload(*args)
|
||||||
end
|
end
|
||||||
|
|
||||||
def to_param
|
def to_param
|
||||||
|
|
|
@ -128,10 +128,11 @@ class User < Principal
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
alias :base_reload :reload
|
||||||
def reload(*args)
|
def reload(*args)
|
||||||
@name = nil
|
@name = nil
|
||||||
@projects_by_role = nil
|
@projects_by_role = nil
|
||||||
super
|
base_reload(*args)
|
||||||
end
|
end
|
||||||
|
|
||||||
def mail=(arg)
|
def mail=(arg)
|
||||||
|
|
|
@ -33,7 +33,6 @@ module Redmine
|
||||||
:dependent => :delete_all,
|
:dependent => :delete_all,
|
||||||
:validate => false
|
:validate => false
|
||||||
|
|
||||||
send :alias_method, :reload_without_custom_fields, :reload
|
|
||||||
send :include, Redmine::Acts::Customizable::InstanceMethods
|
send :include, Redmine::Acts::Customizable::InstanceMethods
|
||||||
validate :validate_custom_field_values
|
validate :validate_custom_field_values
|
||||||
after_save :save_custom_field_values
|
after_save :save_custom_field_values
|
||||||
|
@ -43,6 +42,7 @@ module Redmine
|
||||||
module InstanceMethods
|
module InstanceMethods
|
||||||
def self.included(base)
|
def self.included(base)
|
||||||
base.extend ClassMethods
|
base.extend ClassMethods
|
||||||
|
base.send :alias_method_chain, :reload, :custom_fields
|
||||||
end
|
end
|
||||||
|
|
||||||
def available_custom_fields
|
def available_custom_fields
|
||||||
|
@ -154,7 +154,7 @@ module Redmine
|
||||||
@custom_field_values_changed = true
|
@custom_field_values_changed = true
|
||||||
end
|
end
|
||||||
|
|
||||||
def reload(*args)
|
def reload_with_custom_fields(*args)
|
||||||
@custom_field_values = nil
|
@custom_field_values = nil
|
||||||
@custom_field_values_changed = false
|
@custom_field_values_changed = false
|
||||||
reload_without_custom_fields(*args)
|
reload_without_custom_fields(*args)
|
||||||
|
|
Loading…
Reference in New Issue