summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemko Tronçon <git@el-tramo.be>2009-07-30 22:14:58 (GMT)
committerRemko Tronçon <git@el-tramo.be>2009-07-30 22:14:58 (GMT)
commitba113b63e5ee8e76638ae8f02f7220fb1b8fcdce (patch)
treeb7073cde0c35a88838ae91d371d3a78e69d82d7c /Swiften/LinkLocal
parentc8634883470be42eaa674aab05db61c46b005608 (diff)
downloadswift-ba113b63e5ee8e76638ae8f02f7220fb1b8fcdce.zip
swift-ba113b63e5ee8e76638ae8f02f7220fb1b8fcdce.tar.bz2
Remove assertion that is triggered on unregister().
Diffstat (limited to 'Swiften/LinkLocal')
-rw-r--r--Swiften/LinkLocal/LinkLocalServiceBrowser.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp b/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp
index b24d8f0..061bf2c 100644
--- a/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp
+++ b/Swiften/LinkLocal/LinkLocalServiceBrowser.cpp
@@ -100,11 +100,12 @@ void LinkLocalServiceBrowser::handleServiceAdded(const DNSSDServiceID& service)
}
void LinkLocalServiceBrowser::handleServiceRemoved(const DNSSDServiceID& service) {
- if (selfService && service == *selfService) {
+ ResolveQueryMap::iterator i = resolveQueries.find(service);
+ if (i == resolveQueries.end()) {
+ // Can happen after an unregister(), when getting the old 'self'
+ // service remove notification.
return;
}
- ResolveQueryMap::iterator i = resolveQueries.find(service);
- assert(i != resolveQueries.end());
i->second->stop();
resolveQueries.erase(i);
ServiceMap::iterator j = services.find(service);