fix: handle file.Close() errors in sprites command (errcheck)
This commit is contained in:
+13
-5
@@ -232,14 +232,18 @@ func generateSprite(cat *SpriteCategory, iconSize int, suffix string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// loadImage loads a PNG image from the given path
|
// loadImage loads a PNG image from the given path
|
||||||
func loadImage(path string) (image.Image, error) {
|
func loadImage(path string) (img image.Image, err error) {
|
||||||
file, err := os.Open(path)
|
file, err := os.Open(path)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
defer file.Close()
|
defer func() {
|
||||||
|
if cerr := file.Close(); cerr != nil && err == nil {
|
||||||
|
err = cerr
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
img, err := png.Decode(file)
|
img, err = png.Decode(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
@@ -295,7 +299,7 @@ func resizeAndCenter(src image.Image, targetSize int) *image.RGBA {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// saveImage saves an image to the given path as PNG
|
// saveImage saves an image to the given path as PNG
|
||||||
func saveImage(img image.Image, path string) error {
|
func saveImage(img image.Image, path string) (err error) {
|
||||||
// Ensure directory exists
|
// Ensure directory exists
|
||||||
dir := filepath.Dir(path)
|
dir := filepath.Dir(path)
|
||||||
if err := os.MkdirAll(dir, 0755); err != nil {
|
if err := os.MkdirAll(dir, 0755); err != nil {
|
||||||
@@ -306,7 +310,11 @@ func saveImage(img image.Image, path string) error {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
defer file.Close()
|
defer func() {
|
||||||
|
if cerr := file.Close(); cerr != nil && err == nil {
|
||||||
|
err = cerr
|
||||||
|
}
|
||||||
|
}()
|
||||||
|
|
||||||
return png.Encode(file, img)
|
return png.Encode(file, img)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user