|
@@ -124,16 +124,18 @@ func (wc IRCWSConn) WriteLines(buffers [][]byte) (err error) {
|
124
|
124
|
}
|
125
|
125
|
|
126
|
126
|
func (wc IRCWSConn) ReadLine() (line []byte, err error) {
|
127
|
|
- for {
|
128
|
|
- var messageType int
|
129
|
|
- messageType, line, err = wc.conn.ReadMessage()
|
130
|
|
- // on empty message or non-text message, try again, block if necessary
|
131
|
|
- if err != nil || (messageType == websocket.TextMessage && len(line) != 0) {
|
132
|
|
- if err == websocket.ErrReadLimit {
|
133
|
|
- err = errReadQ
|
134
|
|
- }
|
135
|
|
- return
|
|
127
|
+ messageType, line, err := wc.conn.ReadMessage()
|
|
128
|
+ if err == nil {
|
|
129
|
+ if messageType == websocket.TextMessage {
|
|
130
|
+ return line, nil
|
|
131
|
+ } else {
|
|
132
|
+ // for purposes of fakelag, treat non-text message as an empty line
|
|
133
|
+ return nil, nil
|
136
|
134
|
}
|
|
135
|
+ } else if err == websocket.ErrReadLimit {
|
|
136
|
+ return line, errReadQ
|
|
137
|
+ } else {
|
|
138
|
+ return line, err
|
137
|
139
|
}
|
138
|
140
|
}
|
139
|
141
|
|