Skip to content

Commit 7402ae7

Browse files
committed
Fixed regession in discoveries startup
Fix arduino#1669
1 parent 69016db commit 7402ae7

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

Diff for: arduino/discovery/discovery.go

+10-7
Original file line numberDiff line numberDiff line change
@@ -247,29 +247,32 @@ func (disc *PluggableDiscovery) runProcess() error {
247247
return err
248248
}
249249
disc.outgoingCommandsPipe = stdin
250-
disc.process = proc
251250

252251
messageChan := make(chan *discoveryMessage)
253252
disc.incomingMessagesChan = messageChan
254253
go disc.jsonDecodeLoop(stdout, messageChan)
255254

256-
if err := disc.process.Start(); err != nil {
255+
if err := proc.Start(); err != nil {
257256
return err
258257
}
258+
259259
disc.statusMutex.Lock()
260260
defer disc.statusMutex.Unlock()
261+
disc.process = proc
261262
disc.state = Alive
262263
logrus.Infof("started discovery %s process", disc.id)
263264
return nil
264265
}
265266

266267
func (disc *PluggableDiscovery) killProcess() error {
267268
logrus.Infof("killing discovery %s process", disc.id)
268-
if err := disc.process.Kill(); err != nil {
269-
return err
270-
}
271-
if err := disc.process.Wait(); err != nil {
272-
return err
269+
if disc.process != nil {
270+
if err := disc.process.Kill(); err != nil {
271+
return err
272+
}
273+
if err := disc.process.Wait(); err != nil {
274+
return err
275+
}
273276
}
274277
disc.statusMutex.Lock()
275278
defer disc.statusMutex.Unlock()

0 commit comments

Comments
 (0)