diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2023-06-14 08:14:39 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2023-06-14 09:21:22 +0200 |
commit | 21d17566a3c21a33e78a6aa0bec9c82687eea6fb (patch) | |
tree | 02941bbe7c4a99a6b79836ec324d03552be8e90d /hugolib/integrationtest_builder.go | |
parent | 35e9b3ed1ef96452fc6c721c6022862d2cf3bc70 (diff) |
Fix .Width and .Height for animated gifs
Fixes #11079
Diffstat (limited to 'hugolib/integrationtest_builder.go')
-rw-r--r-- | hugolib/integrationtest_builder.go | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/hugolib/integrationtest_builder.go b/hugolib/integrationtest_builder.go index 4993d922a..0daa766ac 100644 --- a/hugolib/integrationtest_builder.go +++ b/hugolib/integrationtest_builder.go @@ -299,10 +299,20 @@ func (s *IntegrationTestBuilder) initBuilder() error { isBinaryRe := regexp.MustCompile(`^(.*)(\.png|\.jpg)$`) + const dataSourceFilenamePrefix = "sourcefilename:" + for _, f := range s.data.Files { filename := filepath.Join(s.Cfg.WorkingDir, f.Name) data := bytes.TrimSuffix(f.Data, []byte("\n")) - if isBinaryRe.MatchString(filename) { + datastr := strings.TrimSpace(string(data)) + if strings.HasPrefix(datastr, dataSourceFilenamePrefix) { + // Read from file relative to tue current dir. + var err error + wd, _ := os.Getwd() + filename := filepath.Join(wd, strings.TrimSpace(strings.TrimPrefix(datastr, dataSourceFilenamePrefix))) + data, err = os.ReadFile(filename) + s.Assert(err, qt.IsNil) + } else if isBinaryRe.MatchString(filename) { var err error data, err = base64.StdEncoding.DecodeString(string(data)) s.Assert(err, qt.IsNil) |