1
0
mirror of https://github.com/imgproxy/imgproxy.git synced 2025-06-17 22:37:33 +02:00

Add IMGPROXY_PNG_UNLIMITED and IMGPROXY_SVG_UNLIMITED configs

This commit is contained in:
DarthSim
2024-04-15 20:28:05 +03:00
parent 70db3d2235
commit c56e9e64b9
5 changed files with 24 additions and 7 deletions

View File

@ -49,6 +49,8 @@ var vipsConf struct {
PngQuantize C.int
PngQuantizationColors C.int
AvifSpeed C.int
PngUnlimited C.int
SvgUnlimited C.int
}
var badImageErrRe = []*regexp.Regexp{
@ -96,6 +98,8 @@ func Init() error {
vipsConf.PngQuantize = gbool(config.PngQuantize)
vipsConf.PngQuantizationColors = C.int(config.PngQuantizationColors)
vipsConf.AvifSpeed = C.int(config.AvifSpeed)
vipsConf.PngUnlimited = gbool(config.PngUnlimited)
vipsConf.SvgUnlimited = gbool(config.SvgUnlimited)
prometheus.AddGaugeFunc(
"vips_memory_bytes",
@ -327,13 +331,13 @@ func (img *Image) Load(imgdata *imagedata.ImageData, shrink int, scale float64,
case imagetype.JPEG:
err = C.vips_jpegload_go(data, dataSize, C.int(shrink), &tmp)
case imagetype.PNG:
err = C.vips_pngload_go(data, dataSize, &tmp)
err = C.vips_pngload_go(data, dataSize, &tmp, vipsConf.PngUnlimited)
case imagetype.WEBP:
err = C.vips_webpload_go(data, dataSize, C.double(scale), C.int(pages), &tmp)
case imagetype.GIF:
err = C.vips_gifload_go(data, dataSize, C.int(pages), &tmp)
case imagetype.SVG:
err = C.vips_svgload_go(data, dataSize, C.double(scale), &tmp)
err = C.vips_svgload_go(data, dataSize, C.double(scale), &tmp, vipsConf.SvgUnlimited)
case imagetype.HEIC, imagetype.AVIF:
err = C.vips_heifload_go(data, dataSize, &tmp, C.int(0))
case imagetype.TIFF: