Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorRobert Speicher <robert@gitlab.com>2017-01-27 14:30:57 +0300
committerRobert Speicher <robert@gitlab.com>2017-01-27 14:30:57 +0300
commitb9ff4656a8afc7f401d032b857c2089612c597c2 (patch)
treea05c44708a7b0ef10a896300918a461cb34a8b4d /lib
parentd64dfd7b236f0af79ffd4b485cc92977b8d0fa58 (diff)
parent68e94450a06e043ecf58ede565060f41b61043f9 (diff)
Merge branch '26943-fix-user-in-build-presenter' into 'master'
Don't override Ci::Build#user when presenting a build Closes #26943 See merge request !8668
Diffstat (limited to 'lib')
-rw-r--r--lib/gitlab/view/presenter/base.rb2
-rw-r--r--lib/gitlab/view/presenter/delegated.rb4
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/gitlab/view/presenter/base.rb b/lib/gitlab/view/presenter/base.rb
index 83c8ba5c1cf..dbfe0941e4d 100644
--- a/lib/gitlab/view/presenter/base.rb
+++ b/lib/gitlab/view/presenter/base.rb
@@ -1,6 +1,8 @@
module Gitlab
module View
module Presenter
+ CannotOverrideMethodError = Class.new(StandardError)
+
module Base
extend ActiveSupport::Concern
diff --git a/lib/gitlab/view/presenter/delegated.rb b/lib/gitlab/view/presenter/delegated.rb
index f4d330c590e..387ff0f5d43 100644
--- a/lib/gitlab/view/presenter/delegated.rb
+++ b/lib/gitlab/view/presenter/delegated.rb
@@ -8,6 +8,10 @@ module Gitlab
@subject = subject
attributes.each do |key, value|
+ if subject.respond_to?(key)
+ raise CannotOverrideMethodError.new("#{subject} already respond to #{key}!")
+ end
+
define_singleton_method(key) { value }
end