Code refactoring after #963

This commit is contained in:
Alex X
2024-04-29 07:51:53 +03:00
parent ac3d931576
commit ee5c663467
+7 -6
View File
@@ -25,32 +25,33 @@ var Info = map[string]any{
func Init() { func Init() {
var confs Config var confs Config
var version bool
var daemon bool var daemon bool
var version bool
flag.Var(&confs, "config", "go2rtc config (path to file or raw text), support multiple") flag.Var(&confs, "config", "go2rtc config (path to file or raw text), support multiple")
if runtime.GOOS != "windows" { if runtime.GOOS != "windows" {
flag.BoolVar(&daemon, "daemon", false, "Run program in background") flag.BoolVar(&daemon, "daemon", false, "Run program in background")
} else {
daemon = false
} }
flag.BoolVar(&version, "version", false, "Print the version of the application and exit") flag.BoolVar(&version, "version", false, "Print the version of the application and exit")
flag.Parse() flag.Parse()
if version { if version {
fmt.Println("Current version: ", Version) fmt.Println("Current version:", Version)
os.Exit(0) os.Exit(0)
} }
if daemon { if daemon {
for i, arg := range os.Args[1:] { for i, arg := range os.Args {
if arg == "-daemon" { if arg == "-daemon" {
os.Args[i+1] = "" os.Args[i+1] = ""
break
} }
} }
// Re-run the program in background and exit // Re-run the program in background and exit
cmd := exec.Command(os.Args[0], os.Args[1:]...) cmd := exec.Command(os.Args[0], os.Args[1:]...)
cmd.Start() if err := cmd.Start(); err != nil {
log.Fatal().Err(err).Send()
}
fmt.Println("Running in daemon mode with PID:", cmd.Process.Pid) fmt.Println("Running in daemon mode with PID:", cmd.Process.Pid)
os.Exit(0) os.Exit(0)
} }