summaryrefslogtreecommitdiffstats
path: root/resources/image.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2019-09-04 14:07:10 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2019-09-04 17:24:50 +0200
commitbb894ceaf8d3655dd14bc63bf4a4557e3a16f530 (patch)
tree1aa9eab6cd4b10f81a0d382a6c009147333d1df7 /resources/image.go
parent529c7f1090e16c1bcff39948a8a5f4ed054650fb (diff)
Allow slices in the image Filter funcs, not just varargs
[ci skip] See #6255
Diffstat (limited to 'resources/image.go')
-rw-r--r--resources/image.go19
1 files changed, 12 insertions, 7 deletions
diff --git a/resources/image.go b/resources/image.go
index 8a9e6fde4..26b9b8710 100644
--- a/resources/image.go
+++ b/resources/image.go
@@ -28,6 +28,8 @@ import (
"strings"
"sync"
+ "github.com/disintegration/gift"
+
"github.com/gohugoio/hugo/cache/filecache"
"github.com/gohugoio/hugo/resources/images/exif"
@@ -37,7 +39,6 @@ import (
_errors "github.com/pkg/errors"
- "github.com/disintegration/gift"
"github.com/gohugoio/hugo/helpers"
"github.com/gohugoio/hugo/resources/images"
@@ -209,12 +210,19 @@ func (i *imageResource) Fill(spec string) (resource.Image, error) {
})
}
-func (i *imageResource) Filter(filters ...gift.Filter) (resource.Image, error) {
+func (i *imageResource) Filter(filters ...interface{}) (resource.Image, error) {
conf := i.Proc.GetDefaultImageConfig("filter")
- conf.Key = internal.HashString(filters)
+
+ var gfilters []gift.Filter
+
+ for _, f := range filters {
+ gfilters = append(gfilters, images.ToFilters(f)...)
+ }
+
+ conf.Key = internal.HashString(gfilters)
return i.doWithImageConfig(conf, func(src image.Image) (image.Image, error) {
- return i.Proc.Filter(src, filters...)
+ return i.Proc.Filter(src, gfilters...)
})
}
@@ -331,9 +339,6 @@ func (i *imageResource) getImageMetaCacheTargetPath() string {
func (i *imageResource) relTargetPathFromConfig(conf images.ImageConfig) dirFile {
p1, p2 := helpers.FileAndExt(i.getResourcePaths().relTargetDirFile.file)
- if conf.Action == "trace" {
- p2 = ".svg"
- }
h, _ := i.hash()
idStr := fmt.Sprintf("_hu%s_%d", h, i.size())