diff --git a/src/main.c b/src/main.c
index 15663df0c9db14facfde74ddd2771319c26ce59e..1e7caeea8444a346c003466851c80ab3f254c5fa 100644 (file)
--- a/src/main.c
+++ b/src/main.c
}
}
}
}
+#ifndef WIN32
static void
catch_sigint(G_GNUC_UNUSED int sig)
{
static void
catch_sigint(G_GNUC_UNUSED int sig)
{
if (1 != write(sigwinch_pipes[1], &irrelevant, 1))
exit(EXIT_FAILURE);
}
if (1 != write(sigwinch_pipes[1], &irrelevant, 1))
exit(EXIT_FAILURE);
}
+#endif /* WIN32 */
static void
idle_callback(enum mpd_error error,
static void
idle_callback(enum mpd_error error,
return name;
#else
return name;
#else
- return g_strdup(options.host);
+ /*
+ * localhost is actually not correct, we only know that
+ * mpd_connection_new() has connected to the "default host".
+ */
+ const char *name = options.host ?: "localhost";
+ return g_strdup(name);
#endif
}
#endif
}
#else
(void)connection;
#else
(void)connection;
- /*
- * localhost is actually not correct, we only know that
- * mpd_connection_new() has connected to the "default host".
- */
- const char *name = options.host ?: "localhost";
- return g_strdup(name);
+ return default_settings_name();
#endif
}
#endif
}
mpdclient_disconnect(mpd);
success = mpdclient_connect(mpd,
options.host, options.port,
mpdclient_disconnect(mpd);
success = mpdclient_connect(mpd,
options.host, options.port,
- 1500,
+ 5000,
options.password);
if (!success) {
/* try again in 5 seconds */
options.password);
if (!success) {
/* try again in 5 seconds */
doupdate();
/* update immediately */
doupdate();
/* update immediately */
- mpd->events = MPD_IDLE_DATABASE|MPD_IDLE_STORED_PLAYLIST|
- MPD_IDLE_QUEUE|MPD_IDLE_PLAYER|MPD_IDLE_MIXER|MPD_IDLE_OUTPUT|
- MPD_IDLE_OPTIONS|MPD_IDLE_UPDATE;
+ mpd->events = MPD_IDLE_ALL;
do_mpd_update();
do_mpd_update();
/**
* This function is called by the gidle.c library when MPD sends us an
/**
* This function is called by the gidle.c library when MPD sends us an
- * idle event (or when the connectiond dies).
+ * idle event (or when the connection dies).
*/
static void
idle_callback(enum mpd_error error, enum mpd_server_error server_error,
*/
static void
idle_callback(enum mpd_error error, enum mpd_server_error server_error,
c->idle = false;
c->idle = false;
- assert(mpdclient_get_connection(c) != NULL);
+ assert(mpdclient_is_connected(c));
if (error != MPD_ERROR_SUCCESS) {
char *allocated;
if (error != MPD_ERROR_SUCCESS) {
char *allocated;
int
main(int argc, const char *argv[])
{
int
main(int argc, const char *argv[])
{
+#ifndef WIN32
struct sigaction act;
struct sigaction act;
+#endif
#ifdef ENABLE_LOCALE
#ifdef ENABLE_LOCALE
+#ifndef ENABLE_NLS
+ G_GNUC_UNUSED
+#endif
const char *charset = NULL;
#endif
GIOChannel *keyboard_channel;
const char *charset = NULL;
#endif
GIOChannel *keyboard_channel;
/* parse command line options - 2 pass */
options_parse(argc, argv);
/* parse command line options - 2 pass */
options_parse(argc, argv);
+#ifndef WIN32
/* setup signal behavior - SIGINT */
sigemptyset(&act.sa_mask);
act.sa_flags = 0;
/* setup signal behavior - SIGINT */
sigemptyset(&act.sa_mask);
act.sa_flags = 0;
perror("sigaction(SIGPIPE)");
exit(EXIT_FAILURE);
}
perror("sigaction(SIGPIPE)");
exit(EXIT_FAILURE);
}
+#endif
ncu_init();
ncu_init();
}
#endif
}
#endif
+#ifndef WIN32
if (!pipe(sigwinch_pipes) &&
!fcntl(sigwinch_pipes[1], F_SETFL, O_NONBLOCK)) {
sigwinch_channel = g_io_channel_unix_new(sigwinch_pipes[0]);
if (!pipe(sigwinch_pipes) &&
!fcntl(sigwinch_pipes[1], F_SETFL, O_NONBLOCK)) {
sigwinch_channel = g_io_channel_unix_new(sigwinch_pipes[0]);
perror("sigwinch pipe creation failed");
exit(EXIT_FAILURE);
}
perror("sigwinch pipe creation failed");
exit(EXIT_FAILURE);
}
+#endif
/* attempt to connect */
reconnect_source_id = g_timeout_add(1, timer_reconnect, NULL);
/* attempt to connect */
reconnect_source_id = g_timeout_add(1, timer_reconnect, NULL);