Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:12.2
mumble
0001-fix-bonjour-support-using-avahi-compat-lib...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0001-fix-bonjour-support-using-avahi-compat-lib.diff of Package mumble
From bb366a77262db2f14159a25c624183bffcf2efb8 Mon Sep 17 00:00:00 2001 From: Ludwig Nussel <ludwig.nussel@suse.de> Date: Mon, 11 Apr 2011 14:56:25 +0200 Subject: [PATCH mumble] fix bonjour support using avahi compat lib several reads may be required until the resolved callback fires so don't delete record in the read callback. --- src/bonjour/bonjourserviceresolver.cpp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/bonjour/bonjourserviceresolver.cpp b/src/bonjour/bonjourserviceresolver.cpp index 534095c..3bbdc66 100644 --- a/src/bonjour/bonjourserviceresolver.cpp +++ b/src/bonjour/bonjourserviceresolver.cpp @@ -77,7 +77,6 @@ void BonjourServiceResolver::resolveBonjourRecord(const BonjourRecord &record) { void BonjourServiceResolver::bonjourSocketReadyRead(int sockfd) { ResolveRecord *rr = qmResolvers.value(sockfd); - qmResolvers.remove(sockfd); if (! rr) return; @@ -86,7 +85,6 @@ void BonjourServiceResolver::bonjourSocketReadyRead(int sockfd) { if (err != kDNSServiceErr_NoError) emit error(rr->record, err); - delete rr; } @@ -95,6 +93,7 @@ void BonjourServiceResolver::bonjourResolveReply(DNSServiceRef, DNSServiceFlags const char *, const char *hosttarget, quint16 port, quint16 , const char *, void *context) { ResolveRecord *rr = static_cast<ResolveRecord *>(context); + rr->bsr->qmResolvers.remove(DNSServiceRefSockFD(rr->dnssref)); if (errorCode != kDNSServiceErr_NoError) { emit rr->bsr->error(rr->record, errorCode); @@ -102,4 +101,5 @@ void BonjourServiceResolver::bonjourResolveReply(DNSServiceRef, DNSServiceFlags } rr->bonjourPort = qFromBigEndian<quint16>(port); emit rr->bsr->bonjourRecordResolved(rr->record, QString::fromUtf8(hosttarget), rr->bonjourPort); + delete rr; } -- 1.7.3.4
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor