summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-04-02 11:32:41 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2013-04-02 11:32:41 +0300
commitaf657b0509476db56e88014062ccf0a7a6b9d8b7 (patch)
treeac14be9a06cfe94850ee9c4be20aaaae6888e5b0
parentd3559e2556e70947787d841bc6ee98110059f2b3 (diff)
downloadgitlab-ce-af657b0509476db56e88014062ccf0a7a6b9d8b7.tar.gz
reset st_commits before setting new value to prevent error when old st_commits is broken
-rw-r--r--app/models/merge_request.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/app/models/merge_request.rb b/app/models/merge_request.rb
index 8d3780532f3..6ce944173cd 100644
--- a/app/models/merge_request.rb
+++ b/app/models/merge_request.rb
@@ -172,6 +172,12 @@ class MergeRequest < ActiveRecord::Base
def reloaded_commits
if opened? && unmerged_commits.any?
+ # we need to reset st_commits field first
+ # in order to prevent internal rails comparison
+ self.st_commits = []
+ save
+
+ # Then we can safely write unmerged commits
self.st_commits = unmerged_commits
save
end