# HG changeset patch # User Elliott Sales de Andrade # Date 1243062480 0 # Node ID e40a30c883cc0cf907853af4c622eaefc40df847 # Parent f2e4bc583e52e4c0e73b8c6666a8a79b42395d6e Correctly ignore Avahi's informational events when querying records for the buddy icon. This fixes missing icons with the cryptic "An unexpected D-Bus error occured (sic)" (since it wasn't really an error). diff -r f2e4bc583e52 -r e40a30c883cc libpurple/protocols/bonjour/mdns_avahi.c --- a/libpurple/protocols/bonjour/mdns_avahi.c Fri May 22 06:01:12 2009 +0000 +++ b/libpurple/protocols/bonjour/mdns_avahi.c Sat May 23 07:08:00 2009 +0000 @@ -357,14 +357,16 @@ AvahiBuddyImplData *idata = buddy->mdns_impl_data; switch (event) { + case AVAHI_BROWSER_CACHE_EXHAUSTED: + case AVAHI_BROWSER_ALL_FOR_NOW: + /* Ignore these "meta" informational events */ + return; case AVAHI_BROWSER_NEW: bonjour_buddy_got_buddy_icon(buddy, rdata, size); break; case AVAHI_BROWSER_REMOVE: - case AVAHI_BROWSER_CACHE_EXHAUSTED: - case AVAHI_BROWSER_ALL_FOR_NOW: case AVAHI_BROWSER_FAILURE: - purple_debug_error("bonjour", "Error rerieving buddy icon record: %s\n", + purple_debug_error("bonjour", "Error retrieving buddy icon record: %s\n", avahi_strerror(avahi_client_errno(avahi_record_browser_get_client(b)))); break; }