From a2143dd5f76d3775f37762524f4a28433f1295e2 Mon Sep 17 00:00:00 2001 From: mrsdizzie Date: Sat, 17 Oct 2020 13:08:17 -0400 Subject: [PATCH 1/4] Fix error in diff html rendering Was missing an optional whitespace check in regex. Also noticed a rare case where diff.Type == Equal would be empty and thus get a newline attached. Fixed that too. Fixes #13177 --- services/gitdiff/gitdiff.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/services/gitdiff/gitdiff.go b/services/gitdiff/gitdiff.go index 91105399db8b7..6b7d28e05b60f 100644 --- a/services/gitdiff/gitdiff.go +++ b/services/gitdiff/gitdiff.go @@ -181,7 +181,7 @@ var ( removedCodePrefix = []byte(``) codeTagSuffix = []byte(``) ) -var addSpanRegex = regexp.MustCompile(` 0 { @@ -238,7 +238,7 @@ func diffToHTML(fileName string, diffs []diffmatchpatch.Diff, lineType DiffLineT diffs[i].Text = strings.TrimSuffix(diffs[i].Text, addSpan) } buf.Write(removedCodePrefix) - buf.WriteString(getLineContent(diffs[i].Text)) + buf.WriteString(diffs[i].Text) buf.Write(codeTagSuffix) } } From 50f040d9a9840d0f3062d85ec94d34508857f9e8 Mon Sep 17 00:00:00 2001 From: mrsdizzie Date: Sun, 18 Oct 2020 09:56:29 -0500 Subject: [PATCH 2/4] Update services/gitdiff/gitdiff.go Co-authored-by: zeripath --- services/gitdiff/gitdiff.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/gitdiff/gitdiff.go b/services/gitdiff/gitdiff.go index 6b7d28e05b60f..3aacc830f07e1 100644 --- a/services/gitdiff/gitdiff.go +++ b/services/gitdiff/gitdiff.go @@ -181,7 +181,7 @@ var ( removedCodePrefix = []byte(``) codeTagSuffix = []byte(``) ) -var addSpanRegex = regexp.MustCompile(` Date: Sun, 18 Oct 2020 12:12:40 -0400 Subject: [PATCH 3/4] Update gitdiff_test.go --- services/gitdiff/gitdiff_test.go | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/services/gitdiff/gitdiff_test.go b/services/gitdiff/gitdiff_test.go index 64cd4f1c21f38..d497a18b8b250 100644 --- a/services/gitdiff/gitdiff_test.go +++ b/services/gitdiff/gitdiff_test.go @@ -74,6 +74,15 @@ func TestDiffToHTML(t *testing.T) { {Type: dmp.DiffInsert, Text: "lass=\"p\">, true, attrs"}, {Type: dmp.DiffEqual, Text: ", false)"}, }, DiffLineAdd)) + + assertEqual(t, "print("// ", sys.argv)", diffToHTML("", []dmp.Diff{ + {Type: dmp.DiffEqual, Text: "print"}, + {Type: dmp.DiffInsert, Text: "("}, + {Type: dmp.DiffEqual, Text: ""// ", sys.argv"}, + {Type: dmp.DiffInsert, Text: ")"}, + }, DiffLineAdd)) } func TestParsePatch_singlefile(t *testing.T) { From ab4635c58f2030108e82fa35bb542b362354369a Mon Sep 17 00:00:00 2001 From: mrsdizzie Date: Sun, 18 Oct 2020 12:16:12 -0400 Subject: [PATCH 4/4] fmt --- services/gitdiff/gitdiff_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/gitdiff/gitdiff_test.go b/services/gitdiff/gitdiff_test.go index d497a18b8b250..bb7cb40313fa1 100644 --- a/services/gitdiff/gitdiff_test.go +++ b/services/gitdiff/gitdiff_test.go @@ -74,7 +74,7 @@ func TestDiffToHTML(t *testing.T) { {Type: dmp.DiffInsert, Text: "lass=\"p\">, true, attrs"}, {Type: dmp.DiffEqual, Text: ", false)"}, }, DiffLineAdd)) - + assertEqual(t, "print("// ", sys.argv)", diffToHTML("", []dmp.Diff{ {Type: dmp.DiffEqual, Text: "print"}, {Type: dmp.DiffInsert, Text: "