Просмотр исходного кода

Use buffered channels for signals

Djordje Lukic 5 лет назад
Родитель
Сommit
88c405e025
2 измененных файлов с 2 добавлено и 2 удалено
  1. 1 1
      cli/main.go
  2. 1 1
      cli/mobycli/exec.go

+ 1 - 1
cli/main.go

@@ -226,7 +226,7 @@ func checkIfUnknownCommandExistInDefaultContext(err error, currentContext string
 
 func newSigContext() (context.Context, func()) {
 	ctx, cancel := context.WithCancel(context.Background())
-	s := make(chan os.Signal)
+	s := make(chan os.Signal, 1)
 	signal.Notify(s, syscall.SIGTERM, syscall.SIGINT)
 	go func() {
 		<-s

+ 1 - 1
cli/mobycli/exec.go

@@ -62,7 +62,7 @@ func Exec() {
 	cmd.Stdout = os.Stdout
 	cmd.Stderr = os.Stderr
 
-	signals := make(chan os.Signal)
+	signals := make(chan os.Signal, 1)
 	childExit := make(chan bool)
 	signal.Notify(signals) // catch all signals
 	go func() {