From 2a9b544f175ce8bd0268e5516485888738164e41 Mon Sep 17 00:00:00 2001 From: oleksiishnyra Date: Thu, 14 Mar 2019 23:06:17 +0200 Subject: plumbing: object, Count stats properly when no new line added at the end. Fixes #1074 Signed-off-by: Oleksii Shnyra --- plumbing/object/patch.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'plumbing/object/patch.go') diff --git a/plumbing/object/patch.go b/plumbing/object/patch.go index adeaccb..068589e 100644 --- a/plumbing/object/patch.go +++ b/plumbing/object/patch.go @@ -320,11 +320,18 @@ func getFileStatsFromFilePatches(filePatches []fdiff.FilePatch) FileStats { } for _, chunk := range fp.Chunks() { + s := chunk.Content() switch chunk.Type() { case fdiff.Add: - cs.Addition += strings.Count(chunk.Content(), "\n") + cs.Addition += strings.Count(s, "\n") + if s[len(s)-1] != '\n' { + cs.Addition++ + } case fdiff.Delete: - cs.Deletion += strings.Count(chunk.Content(), "\n") + cs.Deletion += strings.Count(s, "\n") + if s[len(s)-1] != '\n' { + cs.Deletion++ + } } } -- cgit