File tree 2 files changed +14
-2
lines changed 2 files changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -134,11 +134,19 @@ func (c *netConn) SetDeadline(t time.Time) error {
134
134
}
135
135
136
136
func (c * netConn ) SetWriteDeadline (t time.Time ) error {
137
- c .writeTimer .Reset (t .Sub (time .Now ()))
137
+ if t .IsZero () {
138
+ c .writeTimer .Stop ()
139
+ } else {
140
+ c .writeTimer .Reset (t .Sub (time .Now ()))
141
+ }
138
142
return nil
139
143
}
140
144
141
145
func (c * netConn ) SetReadDeadline (t time.Time ) error {
142
- c .readTimer .Reset (t .Sub (time .Now ()))
146
+ if t .IsZero () {
147
+ c .readTimer .Stop ()
148
+ } else {
149
+ c .readTimer .Reset (t .Sub (time .Now ()))
150
+ }
143
151
return nil
144
152
}
Original file line number Diff line number Diff line change @@ -130,6 +130,8 @@ func TestHandshake(t *testing.T) {
130
130
nc := websocket .NetConn (c )
131
131
defer nc .Close ()
132
132
133
+ nc .SetWriteDeadline (time.Time {})
134
+ time .Sleep (1 )
133
135
nc .SetWriteDeadline (time .Now ().Add (time .Second * 15 ))
134
136
135
137
for i := 0 ; i < 3 ; i ++ {
@@ -153,6 +155,8 @@ func TestHandshake(t *testing.T) {
153
155
nc := websocket .NetConn (c )
154
156
defer nc .Close ()
155
157
158
+ nc .SetReadDeadline (time.Time {})
159
+ time .Sleep (1 )
156
160
nc .SetReadDeadline (time .Now ().Add (time .Second * 15 ))
157
161
158
162
read := func () error {
You can’t perform that action at this time.
0 commit comments