diff options
Diffstat (limited to 'internal/pkg/tar.go')
| -rw-r--r-- | internal/pkg/tar.go | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/internal/pkg/tar.go b/internal/pkg/tar.go index 33f26f3a..240a3980 100644 --- a/internal/pkg/tar.go +++ b/internal/pkg/tar.go @@ -2,7 +2,6 @@ package pkg import ( "archive/tar" - "bytes" "compress/bzip2" "compress/gzip" "context" @@ -78,12 +77,17 @@ func (a *tarArtifact) Cure(c *CureContext) (err error) { var tr io.ReadCloser { - var data []byte - data, err = c.LoadData(a.f) - if err != nil { + + if tr, err = c.OpenFile(a.f); err != nil { return } - tr = io.NopCloser(bytes.NewReader(data)) + defer func(f io.ReadCloser) { + closeErr := f.Close() + if err == nil { + err = closeErr + } + }(tr) + tr = io.NopCloser(tr) } defer func() { |
