diff options
author | Stefan Rakel <rakel@embedded.rwth-aachen.de> | 2019-06-27 11:06:50 +0200 |
---|---|---|
committer | Drew DeVault <sir@cmpwn.com> | 2019-06-27 09:25:27 -0400 |
commit | 59df06fe28ddde3607cb3080636e65d48b762baf (patch) | |
tree | e043c640ab6943314edc8c2981786303e83516f0 /widgets | |
parent | 963d251289fec0cd4a4e82989b621705c3a8c79d (diff) | |
download | aerc-59df06fe28ddde3607cb3080636e65d48b762baf.tar.gz |
Reopening mailcontent file to fix #166
Because editors like vim use backupfiles and rename them to the original name, the file handle used can point to the wrong file. Reopening the file should fix this.
Diffstat (limited to 'widgets')
-rw-r--r-- | widgets/compose.go | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/widgets/compose.go b/widgets/compose.go index 8fc34b4..dc12e60 100644 --- a/widgets/compose.go +++ b/widgets/compose.go @@ -278,7 +278,13 @@ func (c *Composer) PrepareHeader() (*mail.Header, []string, error) { } func (c *Composer) WriteMessage(header *mail.Header, writer io.Writer) error { - c.email.Seek(0, os.SEEK_SET) + name := c.email.Name() + c.email.Close() + file, err := os.Open(name) + if err != nil { + return errors.Wrap(err, "FileOpen") + } + c.email = file var body io.Reader reader, err := mail.CreateReader(c.email) if err == nil { |