Avoid "no connection to para_server" message is server is stopped.
[paraslash.git] / audiod.c
index f0ce62587d9c6fc995fe7c99440fa1238e706b49..33eac4b910f00936c599a71b7cad0c251ae5190f 100644 (file)
--- a/audiod.c
+++ b/audiod.c
@@ -874,11 +874,6 @@ static void close_stat_pipe(void)
        stat_task->offset_seconds = 0;
        audiod_status_dump();
        stat_task->playing = 0;
-       stat_item_values[SI_BASENAME] = make_message(
-               "%s: no connection to para_server\n",
-               status_item_list[SI_BASENAME]);
-       stat_client_write(stat_item_values[SI_BASENAME],
-               SI_BASENAME);
 }
 
 /**
@@ -1035,6 +1030,12 @@ static void status_pre_select(struct sched *s, struct task *t)
                client_open(argc, argv, &st->ct);
                set_stat_task_restart_barrier(5);
        }
+       free(stat_item_values[SI_BASENAME]);
+       stat_item_values[SI_BASENAME] = make_message(
+               "%s: no connection to para_server\n",
+               status_item_list[SI_BASENAME]);
+       stat_client_write(stat_item_values[SI_BASENAME],
+               SI_BASENAME);
        st->last_status_read = *now;
 out:
        start_stop_decoders(s);