summaryrefslogtreecommitdiff
path: root/lib/gitlab/git_access.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/gitlab/git_access.rb')
-rw-r--r--lib/gitlab/git_access.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/gitlab/git_access.rb b/lib/gitlab/git_access.rb
index 3d07e112e2b..84299dd5790 100644
--- a/lib/gitlab/git_access.rb
+++ b/lib/gitlab/git_access.rb
@@ -2,6 +2,8 @@
# class return an instance of `GitlabAccessStatus`
module Gitlab
class GitAccess
+ include Gitlab::Utils::StrongMemoize
+
UnauthorizedError = Class.new(StandardError)
NotFoundError = Class.new(StandardError)
ProjectCreationError = Class.new(StandardError)
@@ -239,9 +241,11 @@ module Gitlab
end
def can_create_project_in_namespace?(cmd)
- return false unless push?(cmd) && target_namespace && project.blank?
+ strong_memoize(:can_create_project_in_namespace) do
+ return false unless push?(cmd) && target_namespace && project.blank?
- user.can?(:create_projects, target_namespace)
+ user.can?(:create_projects, target_namespace)
+ end
end
def http?