diff options
| author | Robert Speicher <robert@gitlab.com> | 2017-01-27 11:30:57 +0000 |
|---|---|---|
| committer | Robert Speicher <robert@gitlab.com> | 2017-01-27 11:30:57 +0000 |
| commit | b9ff4656a8afc7f401d032b857c2089612c597c2 (patch) | |
| tree | a05c44708a7b0ef10a896300918a461cb34a8b4d /lib | |
| parent | d64dfd7b236f0af79ffd4b485cc92977b8d0fa58 (diff) | |
| parent | 68e94450a06e043ecf58ede565060f41b61043f9 (diff) | |
| download | gitlab-ce-b9ff4656a8afc7f401d032b857c2089612c597c2.tar.gz | |
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.rb | 2 | ||||
| -rw-r--r-- | lib/gitlab/view/presenter/delegated.rb | 4 |
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 |
