diff options
author | Junio C Hamano <gitster@pobox.com> | 2019-07-10 01:25:37 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-07-10 01:25:37 +0300 |
commit | 1b074e15d0f976be2bc14f9528874a841c055213 (patch) | |
tree | a71a012782c2c47ec352f6ab64423a8a91a7f5b4 /git-add--interactive.perl | |
parent | 5cb7c73589059b557f0d690ed6bcfde46ef2d234 (diff) | |
parent | 2bd69b9024c8c7c1b77060e3ed996c74b4775b01 (diff) |
Merge branch 'pw/add-p-recount'
"git checkout -p" needs to selectively apply a patch in reverse,
which did not work well.
* pw/add-p-recount:
add -p: fix checkout -p with pathological context
Diffstat (limited to 'git-add--interactive.perl')
-rwxr-xr-x | git-add--interactive.perl | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/git-add--interactive.perl b/git-add--interactive.perl index 20eb81cc92..da5b4ec4bc 100755 --- a/git-add--interactive.perl +++ b/git-add--interactive.perl @@ -972,7 +972,11 @@ sub coalesce_overlapping_hunks { next; } if ($ofs_delta) { - $n_ofs += $ofs_delta; + if ($patch_mode_flavour{IS_REVERSE}) { + $o_ofs -= $ofs_delta; + } else { + $n_ofs += $ofs_delta; + } $_->{TEXT}->[0] = format_hunk_header($o_ofs, $o_cnt, $n_ofs, $n_cnt); } |