File tree Expand file tree Collapse file tree 1 file changed +19
-16
lines changed
Expand file tree Collapse file tree 1 file changed +19
-16
lines changed Original file line number Diff line number Diff line change @@ -157,24 +157,27 @@ func (c *Client) Run() {
157157 for {
158158 switch sid {
159159 case 0 :
160+ sid = 2
160161 srv , err = daze .Dial ("tcp" , c .Server )
161- switch {
162- case srv == nil :
163- log .Println ("czar:" , err )
164- select {
165- case <- time .After (time .Second * time .Duration (math .Pow (2 , float64 (rtt )))):
166- // A slow start reconnection algorithm.
167- rtt = min (rtt + 1 , 5 )
168- case <- c .Cancel :
169- sid = 2
170- }
171- case err == nil :
172- log .Println ("czar: mux init" )
173- mux = NewMuxClient (srv )
174- rtt = 0
162+ if err != nil {
175163 sid = 1
176164 }
177165 case 1 :
166+ log .Println ("czar:" , err )
167+ select {
168+ case <- time .After (time .Second * time .Duration (math .Pow (2 , float64 (rtt )))):
169+ // A slow start reconnection algorithm.
170+ rtt = min (rtt + 1 , 5 )
171+ sid = 0
172+ case <- c .Cancel :
173+ sid = 4
174+ }
175+ case 2 :
176+ log .Println ("czar: mux init" )
177+ mux = NewMuxClient (srv )
178+ rtt = 0
179+ sid = 3
180+ case 3 :
178181 select {
179182 case c .Mux <- mux :
180183 case <- mux .rer .Sig ():
@@ -184,9 +187,9 @@ func (c *Client) Run() {
184187 case <- c .Cancel :
185188 log .Println ("czar: mux done" )
186189 mux .Close ()
187- sid = 2
190+ sid = 4
188191 }
189- case 2 :
192+ case 4 :
190193 return
191194 }
192195 }
You can’t perform that action at this time.
0 commit comments