From 54545ca337ee803ceb7d7e25a05e929dca2cd856 Mon Sep 17 00:00:00 2001 From: bpc2003 Date: Tue, 27 May 2025 13:16:32 -0400 Subject: Get started on trap command --- cmds/external.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'cmds/external.go') diff --git a/cmds/external.go b/cmds/external.go index 79c73eb..748ce7d 100644 --- a/cmds/external.go +++ b/cmds/external.go @@ -9,7 +9,7 @@ import ( "gosh/global" ) -func External(args []string) { +func External(args []string) int { cmd := "" found := false for i := range global.Paths { @@ -24,9 +24,13 @@ func External(args []string) { cmd.Stdin = os.Stdin cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr - - cmd.Run() - return + + err := cmd.Run() + if exitErr, ok := err.(*exec.ExitError); ok { + return exitErr.ExitCode() + } + return 0 } fmt.Fprintf(os.Stderr, "%s: Command not found\n", args[0]) + return 1 } -- cgit v1.2.3