diff options
Diffstat (limited to 'receivepack')
| -rw-r--r-- | receivepack/service/run_hook.go | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/receivepack/service/run_hook.go b/receivepack/service/run_hook.go index ada897d8..1ab76599 100644 --- a/receivepack/service/run_hook.go +++ b/receivepack/service/run_hook.go @@ -41,6 +41,8 @@ func (service *Service) runHook( var ( quarantineObjectsStore objectstore.Store + quarantineLooseStore *loose.Store + quarantinePackedStore *packed.Store quarantineLooseRoot *os.Root quarantinePackRoot *os.Root err error @@ -54,7 +56,7 @@ func (service *Service) runHook( return nil, nil, nil, false, err.Error() } - quarantineLooseStore, err := loose.New(quarantineLooseRoot, service.opts.Algorithm) + quarantineLooseStore, err = loose.New(quarantineLooseRoot, service.opts.Algorithm) if err != nil { _ = quarantineLooseRoot.Close() @@ -68,7 +70,9 @@ func (service *Service) runHook( quarantinePackRoot, err = quarantineLooseRoot.OpenRoot("pack") if err == nil { - quarantinePackedStore, packedErr := packed.New(quarantinePackRoot, service.opts.Algorithm, packed.Options{}) + var packedErr error + + quarantinePackedStore, packedErr = packed.New(quarantinePackRoot, service.opts.Algorithm, packed.Options{}) if packedErr != nil { _ = quarantineLooseStore.Close() _ = quarantinePackRoot.Close() @@ -95,6 +99,14 @@ func (service *Service) runHook( _ = quarantineObjectsStore.Close() } + if quarantinePackedStore != nil { + _ = quarantinePackedStore.Close() + } + + if quarantineLooseStore != nil { + _ = quarantineLooseStore.Close() + } + if quarantinePackRoot != nil { _ = quarantinePackRoot.Close() } |
