diff --git a/server.go b/server.go
index 1c42b6e..d71c094 100644
--- a/server.go
+++ b/server.go
@@ -279,7 +279,7 @@
 		return
 	}
 	if !s.addConn(st) {
-		c.Close()
+		st.Close()
 		return
 	}
 	s.serveStreams(st)
diff --git a/test/end2end_test.go b/test/end2end_test.go
index f1c7b42..ff04c27 100644
--- a/test/end2end_test.go
+++ b/test/end2end_test.go
@@ -1354,8 +1354,6 @@
 	return
 }
 
-var failOnLeaks = flag.Bool("fail_on_leaks", false, "Fail tests if goroutines leak.")
-
 // leakCheck snapshots the currently-running goroutines and returns a
 // function to be run at the end of tests to see whether any
 // goroutines leaked.
@@ -1364,10 +1362,6 @@
 	for _, g := range interestingGoroutines() {
 		orig[g] = true
 	}
-	leakf := t.Logf
-	if *failOnLeaks {
-		leakf = t.Errorf
-	}
 	return func() {
 		// Loop, waiting for goroutines to shut down.
 		// Wait up to 5 seconds, but finish as quickly as possible.
@@ -1387,7 +1381,7 @@
 				continue
 			}
 			for _, g := range leaked {
-				leakf("Leaked goroutine: %v", g)
+				t.Errorf("Leaked goroutine: %v", g)
 			}
 			return
 		}
