mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-27 01:02:42 +01:00
Fix an issue with Diffusion's display of copied files in Git
Summary: If a change copies some file `A` to `B` and also edits `A`, we currently record this as an indirect change and don't show the edits to `A` in the diff. Instead, record these as direct changes. Test Plan: Created two commits, one which copied `A` to `B` without modifying `A` and one which copied `A` to `B` and modified A. Viewed both commits in Diffusion. The unmodified commit did not show `A`, and the modified commit did (with the correct changes). Reviewers: btrahan, vrana Reviewed By: vrana CC: champo, aran Differential Revision: https://secure.phabricator.com/D3120
This commit is contained in:
parent
c96fac1818
commit
b8f4f7c438
1 changed files with 5 additions and 1 deletions
|
@ -190,7 +190,11 @@ final class PhabricatorRepositoryGitCommitChangeParserWorker
|
|||
unset($move_away[$change_path]);
|
||||
} else {
|
||||
$change_type = DifferentialChangeType::TYPE_COPY_AWAY;
|
||||
$is_direct = false;
|
||||
|
||||
// This change is direct if we picked up a modification above (i.e.,
|
||||
// the original copy source was also edited). Otherwise the original
|
||||
// wasn't touched, so leave it as an indirect change.
|
||||
$is_direct = isset($changes[$change_path]);
|
||||
}
|
||||
|
||||
$reference = $changes[reset($destinations)];
|
||||
|
|
Loading…
Reference in a new issue