diff --git a/pkg/agent/agent_media.go b/pkg/agent/agent_media.go index c15e8c16..8915aca9 100644 --- a/pkg/agent/agent_media.go +++ b/pkg/agent/agent_media.go @@ -172,14 +172,22 @@ func encodeImageToDataURL(localPath, mime string, info os.FileInfo, maxSize int) buf.WriteString(prefix) encoder := base64.NewEncoder(base64.StdEncoding, &buf) - if _, err := io.Copy(encoder, f); err != nil { + _, copyErr := io.Copy(encoder, f) + closeErr := encoder.Close() + if copyErr != nil { logger.WarnCF("agent", "Failed to encode media file", map[string]any{ "path": localPath, - "error": err.Error(), + "error": copyErr.Error(), + }) + return "" + } + if closeErr != nil { + logger.WarnCF("agent", "Failed to close base64 encoder", map[string]any{ + "path": localPath, + "error": closeErr.Error(), }) return "" } - encoder.Close() return buf.String() }