From 4e43d7207bf91ee759c770de1bcc8562a71b4aca Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sun, 22 Mar 2026 18:00:22 +0000 Subject: objectstore/*, repository, receivepack/service: don't take ownership of root --- objectstore/loose/store.go | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'objectstore/loose') diff --git a/objectstore/loose/store.go b/objectstore/loose/store.go index 11f17594..5cb83968 100644 --- a/objectstore/loose/store.go +++ b/objectstore/loose/store.go @@ -12,12 +12,10 @@ import ( // Loose objects are zlib streams whose trailer uses Adler-32. Which reads // consume enough of the stream to reach and verify that trailer is documented // on the individual methods. -// -// Store owns root and closes it in Close. type Store struct { // root is the objects directory capability used for all object file access. // Object files are opened by relative paths like "/". - // Store owns this root. + // Store borrows this root. root *os.Root // algo is the expected object ID algorithm for lookups. algo objectid.Algorithm @@ -37,7 +35,7 @@ func New(root *os.Root, algo objectid.Algorithm) (*Store, error) { // Close releases resources associated with the backend. // +// Store borrows its root, so Close does not close it. +// // Repeated calls to Close are undefined behavior. -func (store *Store) Close() error { - return store.root.Close() -} +func (store *Store) Close() error { return nil } -- cgit v1.3.1-10-gc9f91