From 55e08628c002086ddb525a12eee17452a910635b Mon Sep 17 00:00:00 2001 From: Jordan Orelli Date: Fri, 21 Jun 2013 22:27:07 -0400 Subject: [PATCH] (cleanup) --- args.go | 5 +++-- eval.go | 6 ++++++ skeam.go | 1 - tcp_connections.go | 4 ++-- 4 files changed, 11 insertions(+), 5 deletions(-) diff --git a/args.go b/args.go index f6a98a0..acc5306 100644 --- a/args.go +++ b/args.go @@ -7,11 +7,12 @@ import ( "os" ) -var tcpAddr = flag.String("tcp", "", "foo") +var ( + tcpAddr = flag.String("tcp", "", "tcp ip:port to listen on") +) func runfile() { filename := flag.Args()[0] - fmt.Println(filename) f, err := os.Open(filename) if err != nil { fmt.Fprintln(os.Stderr, "unable to read file ", filename) diff --git a/eval.go b/eval.go index c11a9d6..b10fc15 100644 --- a/eval.go +++ b/eval.go @@ -73,10 +73,16 @@ func (i interpreter) send() { for { select { case v := <-i.values: + if i.out1 == nil { + return + } if _, err := fmt.Fprintln(i.out1, v); err != nil { fmt.Println("can't write out to client: ", err) } case e := <-i.errors: + if i.out2 == nil { + return + } if _, err := fmt.Fprintln(i.out2, e); err != nil { fmt.Println("can't write error to client: ", err) } diff --git a/skeam.go b/skeam.go index cf4d8c9..5d6e222 100644 --- a/skeam.go +++ b/skeam.go @@ -204,7 +204,6 @@ func main() { } if *tcpAddr != "" { runTCPServer() - return } if len(flag.Args()) > 0 { runfile() diff --git a/tcp_connections.go b/tcp_connections.go index df87de0..801768d 100644 --- a/tcp_connections.go +++ b/tcp_connections.go @@ -24,11 +24,11 @@ func runTCPServer() { printErrorMsg(err.Error()) continue } - go startConnection(conn, manager) + go startTCPConnection(conn, manager) } } -func startConnection(conn net.Conn, m *cm.Manager) { +func startTCPConnection(conn net.Conn, m *cm.Manager) { m.Add(conn) defer m.Remove(conn)