浏览代码

don't async buffer flushing

tags/v0.1.0
Jeremy Latt 10 年前
父节点
当前提交
142bf3d3bb
共有 2 个文件被更改,包括 4 次插入6 次删除
  1. 1
    1
      irc/constants.go
  2. 3
    5
      irc/socket.go

+ 1
- 1
irc/constants.go 查看文件

@@ -1,7 +1,7 @@
1 1
 package irc
2 2
 
3 3
 const (
4
-	SEM_VER       = "ergonomadic-1.4.1"
4
+	SEM_VER       = "ergonomadic-1.4.2"
5 5
 	CRLF          = "\r\n"
6 6
 	MAX_REPLY_LEN = 512 - len(CRLF)
7 7
 

+ 3
- 5
irc/socket.go 查看文件

@@ -74,16 +74,14 @@ func (socket *Socket) Write(line string) (err error) {
74 74
 		return
75 75
 	}
76 76
 
77
-	go socket.flush()
77
+	if err = socket.writer.Flush(); socket.isError(err, W) {
78
+		return
79
+	}
78 80
 
79 81
 	Log.debug.Printf("%s ← %s", socket, line)
80 82
 	return
81 83
 }
82 84
 
83
-func (socket *Socket) flush() {
84
-	socket.isError(socket.writer.Flush(), W)
85
-}
86
-
87 85
 func (socket *Socket) isError(err error, dir rune) bool {
88 86
 	if err != nil {
89 87
 		if err != io.EOF {

正在加载...
取消
保存