diff options
| author | 2026-03-05 20:55:17 +0800 | |
|---|---|---|
| committer | 2026-03-05 20:55:17 +0800 | |
| commit | 915fca6a9c2923a3bcf7a5a257e5832fab8cd432 (patch) | |
| tree | 1726c92257263033da5cadb4a570c97b68332ee7 /format/pack/ingest/temp.go | |
| parent | lint: Exclude compress/{flate,internal} (diff) | |
| signature | No signature | |
*: Fix lint wsl_v5
Diffstat (limited to 'format/pack/ingest/temp.go')
| -rw-r--r-- | format/pack/ingest/temp.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/format/pack/ingest/temp.go b/format/pack/ingest/temp.go index b8c947ec..d0297ace 100644 --- a/format/pack/ingest/temp.go +++ b/format/pack/ingest/temp.go @@ -24,6 +24,7 @@ func openTemporaryArtifacts(state *ingestState) error { } revName := "" + var revFile *os.File if state.writeRev { revName, revFile, err = createTempFile(state.destination, "tmp_rev_") @@ -54,18 +55,23 @@ func closeTemporaryArtifacts(state *ingestState) error { if err := state.packFile.Close(); err != nil && out == nil { out = err } + state.packFile = nil } + if state.idxFile != nil { if err := state.idxFile.Close(); err != nil && out == nil { out = err } + state.idxFile = nil } + if state.revFile != nil { if err := state.revFile.Close(); err != nil && out == nil { out = err } + state.revFile = nil } @@ -76,10 +82,12 @@ func closeTemporaryArtifacts(state *ingestState) error { func createTempFile(root *os.Root, prefix string) (string, *os.File, error) { for range 32 { name := prefix + rand.Text() + file, err := root.OpenFile(name, os.O_CREATE|os.O_EXCL|os.O_RDWR, 0o644) if err == nil { return name, file, nil } + if errors.Is(err, fs.ErrExist) { continue } |
