ekiga r7056 - in trunk: . lib/engine/presence/avahi



Author: jpuydt
Date: Tue Sep 23 05:51:33 2008
New Revision: 7056
URL: http://svn.gnome.org/viewvc/ekiga?rev=7056&view=rev

Log:
Preparing a fix for bug #530617.

Modified:
   trunk/ChangeLog
   trunk/lib/engine/presence/avahi/avahi-heap.cpp
   trunk/lib/engine/presence/avahi/avahi-heap.h

Modified: trunk/lib/engine/presence/avahi/avahi-heap.cpp
==============================================================================
--- trunk/lib/engine/presence/avahi/avahi-heap.cpp	(original)
+++ trunk/lib/engine/presence/avahi/avahi-heap.cpp	Tue Sep 23 05:51:33 2008
@@ -95,7 +95,6 @@
   /* let's make sure those are sanely initialized */
   poll = NULL;
   client = NULL;
-  browser = NULL;
 
   avahi_set_allocator (avahi_glib_allocator ());
   poll = avahi_glib_poll_new (NULL, G_PRIORITY_DEFAULT);
@@ -112,9 +111,6 @@
 
 Avahi::Heap::~Heap ()
 {
-  if (browser != NULL)
-    avahi_service_browser_free (browser);
-
   if (client != NULL)
     avahi_client_free (client);
 
@@ -163,13 +159,13 @@
     /* this may not be the final valid browser pointer...
      * we'll take what our callback gets
      */
-    browser = avahi_service_browser_new (client,
-					 AVAHI_IF_UNSPEC,
-					 AVAHI_PROTO_UNSPEC,
-					 "_sip._udp", NULL,
-					 (AvahiLookupFlags)0,
-					 avahi_browser_callback,
-					 this);
+    avahi_service_browser_new (client,
+			       AVAHI_IF_UNSPEC,
+			       AVAHI_PROTO_UNSPEC,
+			       "_sip._udp", NULL,
+			       (AvahiLookupFlags)0,
+			       avahi_browser_callback,
+			       this);
     /* if (browser == NULL) FIXME: better error reporting */
     break;
   case AVAHI_CLIENT_CONNECTING:
@@ -184,7 +180,7 @@
 }
 
 void
-Avahi::Heap::BrowserCallback (AvahiServiceBrowser *_browser,
+Avahi::Heap::BrowserCallback (AvahiServiceBrowser *browser,
 			      AvahiIfIndex interface,
 			      AvahiProtocol protocol,
 			      AvahiBrowserEvent event,
@@ -196,9 +192,6 @@
   AvahiServiceResolver *resolver = NULL;
   bool found = false;
 
-  /* this is the good browser pointer */
-  browser = _browser;
-
   switch (event) {
 
   case AVAHI_BROWSER_NEW:
@@ -230,7 +223,6 @@
     // FIXME: do I care?
     break;
   case AVAHI_BROWSER_FAILURE:
-    if (browser != NULL)
       avahi_service_browser_free (browser);
     browser = NULL;
     ; // FIXME: better error reporting
@@ -242,7 +234,7 @@
 }
 
 void
-Avahi::Heap::ResolverCallback (AvahiServiceResolver */*resolver*/,
+Avahi::Heap::ResolverCallback (AvahiServiceResolver *resolver,
 			       AvahiIfIndex /*interface*/,
 			       AvahiProtocol /*protocol*/,
 			       AvahiResolverEvent event,
@@ -325,6 +317,7 @@
     break;
   case AVAHI_RESOLVER_FAILURE:
 
+    avahi_service_resolver_free (resolver);
     /* FIXME: better error reporting */
     break;
   default:

Modified: trunk/lib/engine/presence/avahi/avahi-heap.h
==============================================================================
--- trunk/lib/engine/presence/avahi/avahi-heap.h	(original)
+++ trunk/lib/engine/presence/avahi/avahi-heap.h	Tue Sep 23 05:51:33 2008
@@ -110,7 +110,6 @@
     Ekiga::ServiceCore &core;
     AvahiGLibPoll *poll;
     AvahiClient *client;
-    AvahiServiceBrowser *browser;
   };
 
 /**



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]