Skip to content

Commit c58156b

Browse files
authored
Handle file close error (#1117)
1 parent 16ab50e commit c58156b

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

internal/file/file_manager_service.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -847,7 +847,7 @@ func (fms *FileManagerService) UpdateManifestFile(currentFiles map[string]*mpi.F
847847
return fms.writeManifestFile(updatedFiles)
848848
}
849849

850-
func (fms *FileManagerService) writeManifestFile(updatedFiles map[string]*model.ManifestFile) error {
850+
func (fms *FileManagerService) writeManifestFile(updatedFiles map[string]*model.ManifestFile) (writeError error) {
851851
manifestJSON, err := json.MarshalIndent(updatedFiles, "", " ")
852852
if err != nil {
853853
return fmt.Errorf("unable to marshal manifest file json: %w", err)
@@ -863,14 +863,18 @@ func (fms *FileManagerService) writeManifestFile(updatedFiles map[string]*model.
863863
if err != nil {
864864
return fmt.Errorf("failed to read manifest file: %w", err)
865865
}
866-
defer newFile.Close()
866+
defer func() {
867+
if closeErr := newFile.Close(); closeErr != nil {
868+
writeError = closeErr
869+
}
870+
}()
867871

868872
_, err = newFile.Write(manifestJSON)
869873
if err != nil {
870874
return fmt.Errorf("failed to write manifest file: %w", err)
871875
}
872876

873-
return nil
877+
return writeError
874878
}
875879

876880
func (fms *FileManagerService) manifestFile() (map[string]*model.ManifestFile, map[string]*mpi.File, error) {

0 commit comments

Comments
 (0)