fix: explicitly ignore Close() errors on temp file write/sync failure paths

This commit is contained in:
程智超0668000959
2026-06-09 09:52:48 +08:00
parent 46b29a0ae9
commit 6b004f6a5f
3 changed files with 4 additions and 4 deletions
+1 -1
View File
@@ -334,7 +334,7 @@ func (c *WeComChannel) storeRemoteMedia(
}
tmpPath := tmpFile.Name()
if _, writeErr := tmpFile.Write(data); writeErr != nil {
tmpFile.Close()
_ = tmpFile.Close()
_ = os.Remove(tmpPath)
return "", fmt.Errorf("write temp file: %w", writeErr)
}
+2 -2
View File
@@ -1108,7 +1108,7 @@ func (r *sandboxFs) WriteFile(path string, data []byte) error {
}
if _, err := tmpFile.Write(data); err != nil {
tmpFile.Close()
_ = tmpFile.Close()
root.Remove(tmpRelPath)
return fmt.Errorf("failed to write temp file: %w", err)
}
@@ -1116,7 +1116,7 @@ func (r *sandboxFs) WriteFile(path string, data []byte) error {
// CRITICAL: Force sync to storage medium before rename.
// This ensures data is physically written to disk, not just cached.
if err := tmpFile.Sync(); err != nil {
tmpFile.Close()
_ = tmpFile.Close()
root.Remove(tmpRelPath)
return fmt.Errorf("failed to sync temp file: %w", err)
}
+1 -1
View File
@@ -230,7 +230,7 @@ func storeInlineDataURL(
}
tmpPath := tmpFile.Name()
if _, err = tmpFile.Write(decoded); err != nil {
tmpFile.Close()
_ = tmpFile.Close()
_ = os.Remove(tmpPath)
return "", fmt.Sprintf("[Tool returned inline media content (%s) but it could not be stored.]", mimeType)
}