Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-07-12 16:19:54 +0300
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2018-07-12 20:36:12 +0300
commitbeec1fc98e5d37bba742d6bc2a0ff7c344b469f8 (patch)
treebe435ef05d24a14d83279787c1f9254d34a91e8a /resource
parent306573def0e20ec16ee5c447981cc09ed8bb7ec7 (diff)
resource: Fix resources.Concat for transformed resources
Fixes #4936
Diffstat (limited to 'resource')
-rw-r--r--resource/transform.go21
1 files changed, 17 insertions, 4 deletions
diff --git a/resource/transform.go b/resource/transform.go
index fcb101438..005ede767 100644
--- a/resource/transform.go
+++ b/resource/transform.go
@@ -188,12 +188,25 @@ type transformedResource struct {
Resource
}
+type readSeeker struct {
+ io.Reader
+ io.Seeker
+ io.Closer
+}
+
+func (r *readSeeker) Close() error {
+ return nil
+}
+
+func (r *readSeeker) Seek(offset int64, whence int) (int64, error) {
+ panic("Seek is not supported by this io.Reader")
+}
+
func (r *transformedResource) ReadSeekCloser() (ReadSeekCloser, error) {
- rc, ok := r.Resource.(ReadSeekCloserResource)
- if !ok {
- return nil, fmt.Errorf("resource %T is not a ReadSeekerCloserResource", rc)
+ if err := r.initContent(); err != nil {
+ return nil, err
}
- return rc.ReadSeekCloser()
+ return &readSeeker{Reader: strings.NewReader(r.content)}, nil
}
func (r *transformedResource) transferTransformedValues(another *transformedResource) {