mirror of
https://github.com/keven1024/015.git
synced 2026-05-26 15:13:30 +00:00
fix(worker): ensure temporary files are removed on error during image compression and conversion
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
|||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
"fmt"
|
||||||
"mime"
|
"mime"
|
||||||
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
"pkg/models"
|
"pkg/models"
|
||||||
"pkg/utils"
|
"pkg/utils"
|
||||||
@@ -37,6 +38,7 @@ func CompressImage(ctx context.Context, task *asynq.Task) error {
|
|||||||
}
|
}
|
||||||
compressedFileInfo, err := services.GenStandardFile(compressedPath, originalFileInfo.MimeType)
|
compressedFileInfo, err := services.GenStandardFile(compressedPath, originalFileInfo.MimeType)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
defer os.Remove(compressedPath)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -80,12 +82,14 @@ func ConvertImage(ctx context.Context, task *asynq.Task) error {
|
|||||||
}
|
}
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
mimeType := mime.TypeByExtension(payload.TargetExt)
|
mimeType := mime.TypeByExtension(fmt.Sprintf(".%s", payload.TargetExt))
|
||||||
if mimeType == "" {
|
if mimeType == "" {
|
||||||
|
defer os.Remove(convertedPath)
|
||||||
return ErrUnknown
|
return ErrUnknown
|
||||||
}
|
}
|
||||||
convertedFileInfo, err := services.GenStandardFile(convertedPath, mimeType)
|
convertedFileInfo, err := services.GenStandardFile(convertedPath, mimeType)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
defer os.Remove(convertedPath)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user