浏览代码

minor cleanup for signal handling

unclejack 12 年之前
父节点
当前提交
2ba5c91547
共有 1 个文件被更改,包括 4 次插入7 次删除
  1. 4 7
      commands.go

+ 4 - 7
commands.go

@@ -1396,13 +1396,10 @@ func (cli *DockerCli) CmdRun(args ...string) error {
 		signals := make(chan os.Signal, 1)
 		signal.Notify(signals, syscall.SIGINT, syscall.SIGTERM)
 		go func() {
-			for {
-				sig := <-signals
-				if sig == syscall.SIGINT || sig == syscall.SIGTERM {
-					fmt.Printf("\nReceived signal: %s; cleaning up\n", sig)
-					if err := cli.CmdStop("-t", "4", runResult.ID); err != nil {
-						fmt.Printf("failed to stop container:", err)
-					}
+			for sig := range signals {
+				fmt.Printf("\nReceived signal: %s; cleaning up\n", sig)
+				if err := cli.CmdStop("-t", "4", runResult.ID); err != nil {
+					fmt.Printf("failed to stop container:", err)
 				}
 			}
 		}()