diff --git a/pkg/asciisanitizer/sanitizer.go b/pkg/asciisanitizer/sanitizer.go index e54811e..0292bec 100644 --- a/pkg/asciisanitizer/sanitizer.go +++ b/pkg/asciisanitizer/sanitizer.go @@ -73,6 +73,7 @@ func (t *Sanitizer) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err // Add an escape character when necessary to prevent creating // invalid JSON with our replacements. repl = append([]byte{'\\'}, repl...) + t.addEscape = false } err = transfer(repl, src[:6]) if err != nil { diff --git a/pkg/asciisanitizer/sanitizer_test.go b/pkg/asciisanitizer/sanitizer_test.go index 7240288..565cd15 100644 --- a/pkg/asciisanitizer/sanitizer_test.go +++ b/pkg/asciisanitizer/sanitizer_test.go @@ -24,8 +24,8 @@ func TestSanitizerTransform(t *testing.T) { { name: "JSON sanitization maintains valid JSON", json: true, - input: `\u001B \\u001B \\\u001B \\\\u001B`, - want: `^[ \\^[ \\^[ \\\\^[`, + input: `\u001B \\u001B \\\u001B \\\\u001B \\u001B\\u001B`, + want: `^[ \\^[ \\^[ \\\\^[ \\^[\\^[`, }, { name: "JSON C0 control character",