ZeroconfAvahi: pass GMainContext to avahi_glib_poll_new()

This commit is contained in:
Max Kellermann 2013-01-27 22:53:21 +01:00
parent 0988056471
commit 2cbe21c791
3 changed files with 9 additions and 5 deletions

View File

@ -21,6 +21,7 @@
#include "ZeroconfAvahi.hxx"
#include "ZeroconfInternal.hxx"
#include "Listen.hxx"
#include "event/Loop.hxx"
#include "mpd_error.h"
#include <glib.h>
@ -216,7 +217,7 @@ static void avahiClientCallback(AvahiClient * c, AvahiClientState state,
}
void
AvahiInit(const char *serviceName)
AvahiInit(EventLoop &loop, const char *serviceName)
{
int error;
g_debug("Initializing interface");
@ -228,7 +229,8 @@ AvahiInit(const char *serviceName)
avahiRunning = 1;
avahi_glib_poll = avahi_glib_poll_new(NULL, G_PRIORITY_DEFAULT);
avahi_glib_poll = avahi_glib_poll_new(loop.GetContext(),
G_PRIORITY_DEFAULT);
avahi_poll = avahi_glib_poll_get(avahi_glib_poll);
avahiClient = avahi_client_new(avahi_poll, AVAHI_CLIENT_NO_FAIL,

View File

@ -1,5 +1,5 @@
/*
* Copyright (C) 2003-2011 The Music Player Daemon Project
* Copyright (C) 2003-2013 The Music Player Daemon Project
* http://www.musicpd.org
*
* This program is free software; you can redistribute it and/or modify
@ -20,8 +20,10 @@
#ifndef MPD_ZEROCONF_AVAHI_HXX
#define MPD_ZEROCONF_AVAHI_HXX
class EventLoop;
void
AvahiInit(const char *service_name);
AvahiInit(EventLoop &loop, const char *service_name);
void
AvahiDeinit();

View File

@ -55,7 +55,7 @@ ZeroconfInit(gcc_unused EventLoop &loop)
serviceName = config_get_string(CONF_ZEROCONF_NAME, SERVICE_NAME);
#ifdef HAVE_AVAHI
AvahiInit(serviceName);
AvahiInit(loop, serviceName);
#endif
#ifdef HAVE_BONJOUR