fix: stop jobs on exit

extended-job-api
TorchedSammy 2022-05-21 11:38:02 -04:00
parent db6817e4ca
commit fc40bad092
Signed by: sammyette
GPG Key ID: 904FC49417B44DCD
1 changed files with 13 additions and 4 deletions

11
main.go
View File

@ -221,6 +221,8 @@ input:
} }
fmt.Printf("\u001b[7m∆\u001b[0m" + strings.Repeat(" ", termwidth - 1) + "\r") fmt.Printf("\u001b[7m∆\u001b[0m" + strings.Repeat(" ", termwidth - 1) + "\r")
} }
exit(0)
} }
func continuePrompt(prev string) (string, error) { func continuePrompt(prev string) (string, error) {
@ -296,10 +298,17 @@ func contains(s []string, e string) bool {
} }
func exit(code int) { func exit(code int) {
// wait for all timers to finish before exiting jobs.stopAll()
// wait for all timers to finish before exiting.
// only do that when not interactive
if !interactive {
for { for {
if timers.running == 0 { if timers.running == 0 {
os.Exit(code) os.Exit(code)
} }
} }
} }
os.Exit(code)
}