From 12403785afa80d462d7432e4d83fff774c65ed07 Mon Sep 17 00:00:00 2001 From: James Houlahan Date: Fri, 9 Oct 2020 13:42:37 +0200 Subject: [PATCH] fix: replace, don't add, transfer encoding when making body 7-bit clean --- Changelog.md | 11 +++++++++++ pkg/message/parser/writer.go | 4 ++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Changelog.md b/Changelog.md index c90a3615..0d3e669b 100644 --- a/Changelog.md +++ b/Changelog.md @@ -4,19 +4,28 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/) ## Unreleased +## [Bridge 1.4.4] Forth + +### Fixed +* GODT-798 Replace, don't add, transfer encoding when making body 7-bit clean. + + ## [Bridge 1.4.3] Forth ### Changed * Reverted sending IMAP updates to be not blocking again. + ### Fixed * GODT-783 Settings flags by FLAGS (not using +/-FLAGS) do not change spam state. + ## [Bridge 1.4.2] Forth ### Changed * GODT-761 Use label.Path instead of Name to partially support subfolders for webapp beta release. * GODT-765 Improve speed of checking whether message is deleted. + ## [IE 1.1.1] Danube (beta 2020-09-xx) [Bridge 1.4.1] Forth (beta 2020-09-xx) ### Fixed @@ -24,12 +33,14 @@ Changelog [format](http://keepachangelog.com/en/1.0.0/) * GODT-752 Parsing non-utf8 multipart/alternative message. * GODT-752 Parsing message with duplicate charset parameter. + ## [IE 1.1.0] Danube ### Fixed * GODT-703 Import-Export showed always at least one total message. * GODT-738 Fix for mbox files with long lines. + ## [Bridge 1.4.0] Forth ### Added diff --git a/pkg/message/parser/writer.go b/pkg/message/parser/writer.go index e1e4e3d5..b4cbaefc 100644 --- a/pkg/message/parser/writer.go +++ b/pkg/message/parser/writer.go @@ -35,7 +35,7 @@ func newWriter(root *Part) *Writer { func (w *Writer) Write(ww io.Writer) error { if !w.root.is7BitClean() { - w.root.Header.Add("Content-Transfer-Encoding", "base64") + w.root.Header.Set("Content-Transfer-Encoding", "base64") } msgWriter, err := message.CreateWriter(ww, w.root.Header) @@ -68,7 +68,7 @@ func (w *Writer) write(writer *message.Writer, p *Part) error { func (w *Writer) writeAsChild(writer *message.Writer, p *Part) error { if !p.is7BitClean() { - p.Header.Add("Content-Transfer-Encoding", "base64") + p.Header.Set("Content-Transfer-Encoding", "base64") } childWriter, err := writer.CreatePart(p.Header)