diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-07-28 21:54:40 +0400 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2014-07-28 21:54:40 +0400 |
commit | ddaa493ef3f6ca2b84bc02acc7a5961cf18e3c12 (patch) | |
tree | 84ae5a547675086fe8ab1cd354603bcbe879bd3c /app/models/repository.rb | |
parent | 00c6723883671769f6efd692f935dc3203d7ccc6 (diff) |
Improve MR building
* fix 500 error when no parent for initial commit
* fix link from diff files to wrong commit
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'app/models/repository.rb')
-rw-r--r-- | app/models/repository.rb | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/app/models/repository.rb b/app/models/repository.rb index 2ff70c248dc..d9b0d1fbe22 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -263,4 +263,20 @@ class Repository contributor end end + + def blob_for_diff(commit, diff) + file = blob_at(commit.id, diff.new_path) + + unless file + file = prev_blob_for_diff(commit, diff) + end + + file + end + + def prev_blob_for_diff(commit, diff) + if commit.parent_id + blob_at(commit.parent_id, diff.old_path) + end + end end |