]> git.tuebingen.mpg.de Git - paraslash.git/blobdiff - audiod.c
oss: Introduce sound device lock.
[paraslash.git] / audiod.c
index 6b77e338565dc633c15d891f9ed05de73fa38f96..6dfef3a233c0f983d5a91ff0e0e0642ba47fd30d 100644 (file)
--- a/audiod.c
+++ b/audiod.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2005-2014 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2005-2014 Andre Noll <maan@tuebingen.mpg.de>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -390,6 +390,7 @@ static void close_receiver(int slot_num)
        task_reap(&s->receiver_node->task);
        free(s->receiver_node);
        s->receiver_node = NULL;
+       stat_task->current_audio_format_num = -1;
        tv_add(now, &(struct timeval)EMBRACE(0, 200 * 1000),
                &a->restart_barrier);
 }
@@ -1078,8 +1079,8 @@ static void close_stat_pipe(void)
 {
        if (!stat_task->ct)
                return;
-       client_close(stat_task->ct);
        task_reap(&stat_task->ct->task);
+       client_close(stat_task->ct);
        stat_task->ct = NULL;
        clear_and_dump_items();
        stat_task->length_seconds = 0;
@@ -1394,7 +1395,7 @@ int main(int argc, char *argv[])
        writer_init();
        if (conf.help_given || conf.detailed_help_given)
                print_help_and_die();
-       drop_privileges_or_die(conf.user_arg, conf.group_arg);
+       daemon_drop_privileges_or_die(conf.user_arg, conf.group_arg);
        parse_config_or_die();
        init_colors_or_die();
        init_random_seed_or_die();
@@ -1412,8 +1413,8 @@ int main(int argc, char *argv[])
                PARA_EMERG_LOG("%s\n", para_strerror(-ret));
                exit(EXIT_FAILURE);
        }
-       log_welcome("para_audiod");
-       set_server_start_time(NULL);
+       daemon_log_welcome("para_audiod");
+       daemon_set_start_time();
        set_initial_status();
        FOR_EACH_SLOT(i)
                clear_slot(i);