diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2018-01-09 15:32:54 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-01-09 20:02:40 +0100 |
commit | 6d02c1e20471cd8b6923c82e8faacfe43a75b1e1 (patch) | |
tree | 2f3dfce7f17e875cce9a6b95b51651f794a41652 /lib/diff.tcl | |
parent | Merge remote-tracking branch 'philoakley/dup-gui' (diff) | |
download | git-6d02c1e20471cd8b6923c82e8faacfe43a75b1e1.tar.xz git-6d02c1e20471cd8b6923c82e8faacfe43a75b1e1.zip |
git gui: fix staging a second line to a 1-line file
When a 1-line file is augmented by a second line, and the user tries to
stage that single line via the "Stage Line" context menu item, we do not
want to see "apply: corrupt patch at line 5".
The reason for this error was that the hunk header looks like this:
@@ -1 +1,2 @@
but the existing code expects the original range always to contain a
comma. This problem is easily fixed by cutting the string "1 +1,2"
(that Git GUI formerly mistook for the starting line) at the space.
This fixes https://github.com/git-for-windows/git/issues/515
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to '')
-rw-r--r-- | lib/diff.tcl | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/diff.tcl b/lib/diff.tcl index 4cae10a4c7..68c4a6c736 100644 --- a/lib/diff.tcl +++ b/lib/diff.tcl @@ -698,6 +698,7 @@ proc apply_range_or_line {x y} { set hh [$ui_diff get $i_l "$i_l + 1 lines"] set hh [lindex [split $hh ,] 0] set hln [lindex [split $hh -] 1] + set hln [lindex [split $hln " "] 0] # There is a special situation to take care of. Consider this # hunk: |