From 15a09e3307761bddceefbe8828d0d972220074c9 Mon Sep 17 00:00:00 2001 From: Atsushi Watanabe Date: Sat, 4 Apr 2020 14:06:21 +0900 Subject: [PATCH] Asynchronously add remote candidate As same as mDNS candidate. --- agent.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/agent.go b/agent.go index 39d853e..fb24dc3 100644 --- a/agent.go +++ b/agent.go @@ -790,9 +790,15 @@ func (a *Agent) AddRemoteCandidate(c Candidate) error { return nil } - return a.run(func(agent *Agent) { - agent.addRemoteCandidate(c) - }) + go func() { + if err := a.run(func(agent *Agent) { + agent.addRemoteCandidate(c) + }); err != nil { + a.log.Warnf("Failed to add remote candidate %s: %v", c.Address(), err) + return + } + }() + return nil } func (a *Agent) resolveAndAddMulticastCandidate(c *CandidateHost) {