From 5b1a67514d984240240234d1e7d203b481a03f62 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Sun, 22 Feb 2026 13:34:10 +0800 Subject: show-object: Fix defer --- cmd/show-object/main.go | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/cmd/show-object/main.go b/cmd/show-object/main.go index 1df925e0..47326269 100644 --- a/cmd/show-object/main.go +++ b/cmd/show-object/main.go @@ -22,33 +22,41 @@ func main() { log.Fatal("must provide -r and -h ") } + if err := run(repoPath, name); err != nil { + log.Fatalf("run: %v", err) + } +} + +func run(repoPath *string, name *string) error { root, err := os.OpenRoot(*repoPath) if err != nil { - log.Fatalf("open repo root: %v", err) + return fmt.Errorf("open repo root: %w", err) } defer func() { _ = root.Close() }() repo, err := repository.Open(root) if err != nil { - log.Fatalf("open repository: %v", err) + return fmt.Errorf("open repository: %w", err) } id, err := resolveInput(repo, *name) if err != nil { _ = repo.Close() - log.Fatalf("resolve %q: %v", *name, err) + return fmt.Errorf("resolve %q: %w", *name, err) } stored, err := repo.ReadStored(id) if err != nil { _ = repo.Close() - log.Fatalf("read object %s: %v", id, err) + return fmt.Errorf("read object %s: %w", id, err) } printStored(stored) if err := repo.Close(); err != nil { - log.Fatalf("close repository: %v", err) + return fmt.Errorf("close repository: %w", err) } + + return nil } func resolveInput(repo *repository.Repository, input string) (objectid.ObjectID, error) { -- cgit v1.3.1-10-gc9f91