37 static sigset_t osignals;
40 sigwaiter (gpointer data)
49 sigemptyset(&signals);
50 sigaddset (&signals, SIGINT);
51 sigaddset (&signals, SIGTERM);
54 sigwait (&signals, &caught);
59 pthread_sigmask (SIG_UNBLOCK, &signals, NULL);
64 memset (&arg, 0,
sizeof (arg));
66 xmms_error_reset (&arg.
error);
81 sigemptyset(&signals);
83 sigaddset (&signals, SIGHUP);
84 sigaddset (&signals, SIGTERM);
85 sigaddset (&signals, SIGINT);
87 pthread_sigmask (SIG_BLOCK, &signals, &osignals);
95 signal (SIGPIPE, SIG_IGN);
101 pthread_sigmask (SIG_SETMASK, &osignals, NULL);
107 g_thread_create (sigwaiter, obj, FALSE, NULL);