Explorar o código

Fix calcShrink :facepalm:

DarthSim %!s(int64=7) %!d(string=hai) anos
pai
achega
b51e5ca25e
Modificáronse 1 ficheiros con 6 adicións e 6 borrados
  1. 6 6
      process.go

+ 6 - 6
process.go

@@ -160,13 +160,12 @@ func calcScale(width, height int, po processingOptions) float64 {
 }
 
 func calcShink(scale float64, imgtype imageType) int {
-	shrink := int(1.0 / scale)
-
-	if imgtype != imageTypeJPEG {
-		return shrink
-	}
+	switch imgtype {
+	case imageTypeWEBP:
+		return int(1.0 / scale)
+	case imageTypeJPEG:
+		shrink := int(1.0 / scale)
 
-	if imgtype != imageTypeWEBP {
 		switch {
 		case shrink >= 16:
 			return 8
@@ -247,6 +246,7 @@ func processImage(data []byte, imgtype imageType, po processingOptions, t *timer
 		if scale < 1.0 {
 			if shrink := calcShink(scale, imgtype); shrink != 1 {
 				scale = scale * float64(shrink)
+				log.Printf("Scale: %f, Shrink: %d", scale, shrink)
 
 				if tmp, e := vipsLoadImage(data, imgtype, shrink); e == nil {
 					C.swap_and_clear(&img, tmp)