diff --git a/src/unixsock.c b/src/unixsock.c
index d800906ecc9e76c544486ce41f6f03b2762d1c81..57f34501f8f0dfd423c4c1c8435ea71e9caaf2bc 100644 (file)
--- a/src/unixsock.c
+++ b/src/unixsock.c
return ((void *) 0);
} /* void *us_handle_client */
-static void *us_server_thread (void *arg)
+static void *us_server_thread (void __attribute__((unused)) *arg)
{
int status;
int *remote_fd;
static int us_init (void)
{
+ static int have_init = 0;
+
int status;
+ /* Initialize only once. */
+ if (have_init != 0)
+ return (0);
+ have_init = 1;
+
loop = 1;
status = pthread_create (&listen_thread, NULL, us_server_thread, NULL);