Skip to content

Commit a037f3e

Browse files
committed
improved retrying loop
1 parent a8ebeb8 commit a037f3e

File tree

1 file changed

+9
-8
lines changed

1 file changed

+9
-8
lines changed

tcp_client.go

+9-8
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ package gas
77

88
import (
99
"io"
10-
"log"
1110
"net"
1211
"sync"
1312
"syscall"
@@ -161,19 +160,19 @@ func (c *TCPClient) Read(b []byte) (int, error) {
161160
t *= 2
162161
c.lock.RUnlock()
163162
if err := c.reconnect(); err != nil {
164-
log.Println(err)
165163
switch e := err.(type) {
166164
case *net.OpError:
167165
if e.Err.(syscall.Errno) == syscall.ECONNREFUSED {
168166
disconnected = true
169167
c.lock.RLock()
170168
continue
171-
} else {
172-
disconnected = false
173169
}
170+
return -1, err
174171
default:
175172
return -1, err
176173
}
174+
} else {
175+
disconnected = false
177176
}
178177
c.lock.RLock()
179178
}
@@ -224,12 +223,13 @@ func (c *TCPClient) ReadFrom(r io.Reader) (int64, error) {
224223
disconnected = true
225224
c.lock.RLock()
226225
continue
227-
} else {
228-
disconnected = false
229226
}
227+
return -1, err
230228
default:
231229
return -1, err
232230
}
231+
} else {
232+
disconnected = false
233233
}
234234
c.lock.RLock()
235235
}
@@ -280,12 +280,13 @@ func (c *TCPClient) Write(b []byte) (int, error) {
280280
disconnected = true
281281
c.lock.RLock()
282282
continue
283-
} else {
284-
disconnected = false
285283
}
284+
return -1, err
286285
default:
287286
return -1, err
288287
}
288+
} else {
289+
disconnected = false
289290
}
290291
c.lock.RLock()
291292
}

0 commit comments

Comments
 (0)