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 | |
| parent | 963d251289fec0cd4a4e82989b621705c3a8c79d (diff) | |
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.
| -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 {  | 
