summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2016-03-08 17:53:00 +0100
committerYorick Peterse <yorickpeterse@gmail.com>2016-03-08 18:19:40 +0100
commit177025b5dde5ca34b05744f000a1eee64501863a (patch)
treed9c4916afe8de8b9c2fc2710582b74ff4c9a1030 /app
parentcb5a5ba09588af866aed595d960755bf4ced4483 (diff)
downloadgitlab-ce-177025b5dde5ca34b05744f000a1eee64501863a.tar.gz
Call the right hooks when removing branches
This ensures that Repository#rm_branch calls before_remove_branch/after_remove_branch instead of just 1 random cache expiration method.
Diffstat (limited to 'app')
-rw-r--r--app/models/repository.rb10
1 files changed, 8 insertions, 2 deletions
diff --git a/app/models/repository.rb b/app/models/repository.rb
index d3ca268a659..c3ae461a016 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -144,7 +144,7 @@ class Repository
end
def rm_branch(user, branch_name)
- expire_branches_cache
+ before_remove_branch
branch = find_branch(branch_name)
oldrev = branch.try(:target)
@@ -155,7 +155,7 @@ class Repository
rugged.branches.delete(branch_name)
end
- expire_branches_cache
+ after_remove_branch
true
end
@@ -359,10 +359,16 @@ class Repository
expire_branch_count_cache
end
+ # Runs code before removing an existing branch.
+ def before_remove_branch
+ expire_branches_cache
+ end
+
# Runs code after an existing branch has been removed.
def after_remove_branch
expire_has_visible_content_cache
expire_branch_count_cache
+ expire_branches_cache
end
def method_missing(m, *args, &block)