From aa229af8df46c8eb3f6cc7ba978f4bb51ce0e5ab Mon Sep 17 00:00:00 2001 From: EnumDev Date: Fri, 12 Dec 2025 22:02:44 +0200 Subject: [PATCH] Exit with exit code 1 if no valid subcommand is specified --- src/bpm/main.go | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/bpm/main.go b/src/bpm/main.go index 9b891f5..076a87a 100644 --- a/src/bpm/main.go +++ b/src/bpm/main.go @@ -36,12 +36,14 @@ func main() { log.Fatalf("Error: could not read BPM config: %s", err) } - // Execute subcommand - subcommand := "help" - if len(os.Args) >= 2 { - subcommand = os.Args[1] + // Show usage if no arguments specified + if len(os.Args) == 1 { + printUsage() + return } + subcommand := os.Args[1] + switch subcommand { case "v", "version": fmt.Println("Bubble Package Manager (BPM)") @@ -167,7 +169,8 @@ func main() { compareVersions() default: - listSubcommands() + printUsage() + exitCode = 1 } if exitCode != 0 { @@ -1285,7 +1288,7 @@ func compareVersions() { fmt.Println(bpmlib.CompareVersions(v1, v2)) } -func listSubcommands() { +func printUsage() { fmt.Printf("Usage: %s [options]\n", os.Args[0]) fmt.Println("Description: Manage system packages") fmt.Println("Subcommands:")