소스 검색

serve goroutine must refer to the local conn

Sridhar Ratnakumar 12 년 전
부모
커밋
f731835e45
1개의 변경된 파일3개의 추가작업 그리고 3개의 파일을 삭제
  1. 3 3
      rcli/tcp.go

+ 3 - 3
rcli/tcp.go

@@ -138,7 +138,8 @@ func ListenAndServe(proto, addr string, service Service) error {
 			if err != nil {
 				return err
 			}
-			go func() {
+			go func(conn DockerConn) {
+				defer conn.Close()
 				if DEBUG_FLAG {
 					CLIENT_SOCKET = conn
 				}
@@ -146,8 +147,7 @@ func ListenAndServe(proto, addr string, service Service) error {
 					log.Println("Error:", err.Error())
 					fmt.Fprintln(conn, "Error:", err.Error())
 				}
-				conn.Close()
-			}()
+			}(conn)
 		}
 	}
 	return nil