mirror of
https://github.com/jhillyerd/inbucket.git
synced 2025-12-19 02:27:03 +00:00
Don't close writers with defer
This commit is contained in:
@@ -254,22 +254,22 @@ func (mb *FileMailbox) writeIndex() error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
defer func() {
|
|
||||||
if err := file.Close(); err != nil {
|
|
||||||
log.Errorf("Failed to close %q: %v", mb.indexPath, err)
|
|
||||||
}
|
|
||||||
}()
|
|
||||||
writer := bufio.NewWriter(file)
|
writer := bufio.NewWriter(file)
|
||||||
|
|
||||||
// Write each message and then flush
|
// Write each message and then flush
|
||||||
enc := gob.NewEncoder(writer)
|
enc := gob.NewEncoder(writer)
|
||||||
for _, m := range mb.messages {
|
for _, m := range mb.messages {
|
||||||
err = enc.Encode(m)
|
err = enc.Encode(m)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
_ = file.Close()
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if err := writer.Flush(); err != nil {
|
if err := writer.Flush(); err != nil {
|
||||||
|
_ = file.Close()
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
if err := file.Close(); err != nil {
|
||||||
|
log.Errorf("Failed to close %q: %v", mb.indexPath, err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user