Commit a07021fa authored by Rubén Dávila's avatar Rubén Dávila Committed by Robert Speicher

Make more robust the test to see if a commit has been previously reverted.

parent be54ba33
...@@ -628,11 +628,11 @@ class Repository ...@@ -628,11 +628,11 @@ class Repository
args = [commit.id, source_sha] args = [commit.id, source_sha]
args << { mainline: 1 } if commit.merge_commit? args << { mainline: 1 } if commit.merge_commit?
return false unless diff_exists?(source_sha, commit.id)
revert_index = rugged.revert_commit(*args) revert_index = rugged.revert_commit(*args)
tree_id = revert_index.write_tree(rugged)
return false if revert_index.conflicts? return false if revert_index.conflicts?
return false unless diff_exists?(source_sha, tree_id)
commit_with_hooks(user, target_branch) do |ref| commit_with_hooks(user, target_branch) do |ref|
committer = user_to_committer(user) committer = user_to_committer(user)
...@@ -640,14 +640,14 @@ class Repository ...@@ -640,14 +640,14 @@ class Repository
message: commit.revert_message, message: commit.revert_message,
author: committer, author: committer,
committer: committer, committer: committer,
tree: revert_index.write_tree(rugged), tree: tree_id,
parents: [rugged.lookup(source_sha)], parents: [rugged.lookup(source_sha)],
update_ref: ref) update_ref: ref)
end end
end end
def diff_exists?(source_sha, target_sha) def diff_exists?(sha1, sha2)
rugged.diff(source_sha, target_sha).size.zero? rugged.diff(sha1, sha2).size > 0
end end
def merged_to_root_ref?(branch_name) def merged_to_root_ref?(branch_name)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment