From edd6051df38a5f62b9e0f5df9c058b6e6a7fa6c6 Mon Sep 17 00:00:00 2001 From: Winni Neessen Date: Tue, 8 Aug 2023 10:59:10 +0200 Subject: [PATCH] #138: Add error handling to message writing process In the updated version of msgwriter.go, an additional error handling process has been included. If an error is detected when creating a new part in the message writer, this error is stored and prevents executing the writeBody function. This fixes nil pointer dereference in `mw.writeBody` if an error occured previously. --- msgwriter.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/msgwriter.go b/msgwriter.go index c0e4b88..2b29035 100644 --- a/msgwriter.go +++ b/msgwriter.go @@ -231,7 +231,10 @@ func (mw *msgWriter) addFiles(fl []*File, a bool) { if mw.d > 0 { mw.newPart(f.Header) } - mw.writeBody(f.Writer, e) + + if mw.err == nil { + mw.writeBody(f.Writer, e) + } } }