aboutsummaryrefslogtreecommitdiffstats
path: root/syz-manager/manager.go
diff options
context:
space:
mode:
Diffstat (limited to 'syz-manager/manager.go')
-rw-r--r--syz-manager/manager.go6
1 files changed, 4 insertions, 2 deletions
diff --git a/syz-manager/manager.go b/syz-manager/manager.go
index e093f7732..fd6be0072 100644
--- a/syz-manager/manager.go
+++ b/syz-manager/manager.go
@@ -922,14 +922,16 @@ func (mgr *Manager) uploadReproAssets(repro *repro.Result) []dashapi.NewAsset {
if !ok {
panic("unknown extracted prog asset")
}
- asset, err := mgr.assetStorage.UploadCrashAsset(r, name, dashTyp, nil)
+ r2 := &bytes.Buffer{}
+ r1 := io.TeeReader(r, r2)
+ asset, err := mgr.assetStorage.UploadCrashAsset(r1, name, dashTyp, nil)
if err != nil {
log.Logf(1, "processing of the asset %v (%v) failed: %v", name, typ, err)
return
}
// Report file systems that fail fsck with a separate tag.
if mgr.cfg.RunFsck && dashTyp == dashapi.MountInRepro && c.Meta.Attrs.Fsck != "" {
- logs, isClean, err := image.Fsck(r, c.Meta.Attrs.Fsck)
+ logs, isClean, err := image.Fsck(r2, c.Meta.Attrs.Fsck)
if err != nil {
log.Logf(1, "fsck of the asset %v failed: %v", name, err)
} else {