@@ -91,7 +91,6 @@ type DiscoveryServer struct {
91
91
initialized bool
92
92
started bool
93
93
syncStarted bool
94
- syncChannel chan * message
95
94
cachedPorts map [string ]* Port
96
95
cachedErr string
97
96
}
@@ -246,22 +245,12 @@ func (d *DiscoveryServer) startSync() {
246
245
d .outputChan <- messageError ("start_sync" , "Discovery already STARTed, cannot START_SYNC" )
247
246
return
248
247
}
249
- c := make (chan * message , 10 ) // buffer up to 10 events
250
- d .syncChannel = c
251
248
if err := d .impl .StartSync (d .syncEvent , d .errorEvent ); err != nil {
252
249
d .outputChan <- messageError ("start_sync" , "Cannot START_SYNC: " + err .Error ())
253
- close (d .syncChannel ) // do not leak channel...
254
- d .syncChannel = nil
255
250
return
256
251
}
257
252
d .syncStarted = true
258
253
d .outputChan <- messageOk ("start_sync" )
259
-
260
- go func () {
261
- for e := range c {
262
- d .outputChan <- e
263
- }
264
- }()
265
254
}
266
255
267
256
func (d * DiscoveryServer ) stop () {
@@ -275,22 +264,20 @@ func (d *DiscoveryServer) stop() {
275
264
}
276
265
d .started = false
277
266
if d .syncStarted {
278
- close (d .syncChannel )
279
- d .syncChannel = nil
280
267
d .syncStarted = false
281
268
}
282
269
d .outputChan <- messageOk ("stop" )
283
270
}
284
271
285
272
func (d * DiscoveryServer ) syncEvent (event string , port * Port ) {
286
- d .syncChannel <- & message {
273
+ d .outputChan <- & message {
287
274
EventType : event ,
288
275
Port : port ,
289
276
}
290
277
}
291
278
292
279
func (d * DiscoveryServer ) errorEvent (msg string ) {
293
- d .syncChannel <- messageError ("start_sync" , msg )
280
+ d .outputChan <- messageError ("start_sync" , msg )
294
281
}
295
282
296
283
func (d * DiscoveryServer ) outputProcessor (outWriter io.Writer ) {
0 commit comments