diff --git a/Open.Nat/Discovery/Searcher.cs b/Open.Nat/Discovery/Searcher.cs index b409fc6..cb9b2e6 100644 --- a/Open.Nat/Discovery/Searcher.cs +++ b/Open.Nat/Discovery/Searcher.cs @@ -51,8 +51,15 @@ public Task> Search(CancellationToken cancelationToken) NatDiscoverer.TraceSource.LogInfo("Searching for: {0}", GetType().Name); while (!cancelationToken.IsCancellationRequested) { - Discover(cancelationToken); - Receive(cancelationToken); + try + { + Discover(cancelationToken); + Receive(cancelationToken); + } + catch (Exception e) + { + NatDiscoverer.TraceSource.LogError(e.ToString()); + } } CloseUdpClients(); }, cancelationToken) @@ -66,8 +73,15 @@ await Task.Factory.StartNew(_ => NatDiscoverer.TraceSource.LogInfo("Searching for: {0}", GetType().Name); while (!cancelationToken.IsCancellationRequested) { - Discover(cancelationToken); - Receive(cancelationToken); + try + { + Discover(cancelationToken); + Receive(cancelationToken); + } + catch (Exception e) + { + NatDiscoverer.TraceSource.LogError(e.ToString()); + } } CloseUdpClients(); }, null, cancelationToken);