From 0f40ee2012baedbd09afc40c91dc51baa762218c Mon Sep 17 00:00:00 2001 From: Martin Pulec Date: Mon, 7 Mar 2016 11:11:47 +0100 Subject: [PATCH] Use single should_exit flag. --- src/audio/audio.cpp | 11 ++--------- src/audio/audio.h | 1 - src/hd-rum-translator/hd-rum-decompress.cpp | 2 +- src/hd-rum-translator/hd-rum-translator.cpp | 2 -- src/host.cpp | 2 +- src/host.h | 2 +- src/main.cpp | 8 ++------ src/video_capture/ug_input.cpp | 2 +- src/video_rxtx/ihdtv.cpp | 2 +- src/video_rxtx/ultragrid_rtp.cpp | 2 +- 10 files changed, 10 insertions(+), 24 deletions(-) diff --git a/src/audio/audio.cpp b/src/audio/audio.cpp index beea93a33..89a9c2481 100644 --- a/src/audio/audio.cpp +++ b/src/audio/audio.cpp @@ -85,8 +85,6 @@ using namespace std; -static volatile bool should_exit_audio = false; - struct audio_device_t { int index; void *state; @@ -461,11 +459,6 @@ void audio_join(struct state_audio *s) { } } -void audio_finish() -{ - should_exit_audio = true; -} - void audio_done(struct state_audio *s) { if(s) { @@ -571,7 +564,7 @@ static void *audio_receiver_thread(void *arg) assert(pbuf_data.decoder != NULL); printf("Audio receiving started.\n"); - while (!should_exit_audio) { + while (!should_exit) { struct message *msg; while((msg= check_message(&s->audio_receiver_module))) { struct response *r = audio_receiver_process_message(s, (struct msg_receiver *) msg, pbuf_data.decoder); @@ -882,7 +875,7 @@ static void *audio_sender_thread(void *arg) audio_frame2_resampler resampler_state; printf("Audio sending started.\n"); - while (!should_exit_audio) { + while (!should_exit) { struct message *msg; while((msg= check_message(&s->audio_sender_module))) { struct response *r = audio_sender_process_message(s, (struct msg_sender *) msg); diff --git a/src/audio/audio.h b/src/audio/audio.h index 87df3cbe5..024368797 100644 --- a/src/audio/audio.h +++ b/src/audio/audio.h @@ -73,7 +73,6 @@ extern "C" { #endif void audio_start(struct state_audio *s); -void audio_finish(void); void audio_done(struct state_audio *s); void audio_join(struct state_audio *s); diff --git a/src/hd-rum-translator/hd-rum-decompress.cpp b/src/hd-rum-translator/hd-rum-decompress.cpp index 8431233a4..5d948357d 100644 --- a/src/hd-rum-translator/hd-rum-decompress.cpp +++ b/src/hd-rum-translator/hd-rum-decompress.cpp @@ -255,7 +255,7 @@ void *hd_rum_decompress_init(struct module *parent, bool blend, const char *capt void hd_rum_decompress_done(void *state) { struct state_transcoder_decompress *s = (struct state_transcoder_decompress *) state; - should_exit_receiver = true; + should_exit = true; s->receiver_thread.join(); { diff --git a/src/hd-rum-translator/hd-rum-translator.cpp b/src/hd-rum-translator/hd-rum-translator.cpp index a6a2505e1..c101ac099 100644 --- a/src/hd-rum-translator/hd-rum-translator.cpp +++ b/src/hd-rum-translator/hd-rum-translator.cpp @@ -114,8 +114,6 @@ static void *writer(void *arg); static void signal_handler(int signal); void exit_uv(int status); -static volatile int should_exit = false; - /* * this is currently only placeholder to substitute UG default */ diff --git a/src/host.cpp b/src/host.cpp index 41e95ee66..22b68d28b 100644 --- a/src/host.cpp +++ b/src/host.cpp @@ -49,7 +49,7 @@ int uv_argc; char **uv_argv; char *export_dir = NULL; -volatile bool should_exit_receiver = false; +volatile bool should_exit = false; volatile int log_level = LOG_LEVEL_INFO; bool color_term = (getenv("TERM") && set{"linux", "screen", "xterm", "xterm-256color"}.count(getenv("TERM")) > 0) && isatty(1) && isatty(2); diff --git a/src/host.h b/src/host.h index efc16fea7..69badc3e5 100644 --- a/src/host.h +++ b/src/host.h @@ -79,7 +79,7 @@ struct vidcap_params; extern int uv_argc; extern char **uv_argv; -extern volatile bool should_exit_receiver; +extern volatile bool should_exit; void exit_uv(int status); diff --git a/src/main.cpp b/src/main.cpp index 031793bf0..315dfd92b 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -146,7 +146,6 @@ struct state_uv { }; static int exit_status = EXIT_SUCCESS; -static volatile bool should_exit_sender = false; static struct state_uv *uv_state; @@ -175,10 +174,7 @@ static void crash_signal_handler(int sig) void exit_uv(int status) { exit_status = status; - - should_exit_sender = true; - should_exit_receiver = true; - audio_finish(); + should_exit = true; } static void usage(void) @@ -292,7 +288,7 @@ static void *capture_thread(void *arg) wait_obj = wait_obj_init(); - while (!should_exit_sender) { + while (!should_exit) { /* Capture and transmit video... */ struct audio_frame *audio; struct video_frame *tx_frame = vidcap_grab(uv->capture_device, &audio); diff --git a/src/video_capture/ug_input.cpp b/src/video_capture/ug_input.cpp index 15ab7fcc0..2d17c32c0 100644 --- a/src/video_capture/ug_input.cpp +++ b/src/video_capture/ug_input.cpp @@ -152,7 +152,7 @@ static void vidcap_ug_input_done(void *state) { auto s = (ug_input_state *) state; - should_exit_receiver = true; + should_exit = true; s->receiver_thread.join(); display_put_frame(s->display, NULL, 0); diff --git a/src/video_rxtx/ihdtv.cpp b/src/video_rxtx/ihdtv.cpp index b7426981c..33aa24987 100644 --- a/src/video_rxtx/ihdtv.cpp +++ b/src/video_rxtx/ihdtv.cpp @@ -87,7 +87,7 @@ void *ihdtv_video_rxtx::receiver_loop() struct video_frame *frame_buffer = NULL; - while (!should_exit_receiver) { + while (!should_exit) { frame_buffer = display_get_frame(m_display_device); if (ihdtv_receive (connection, frame_buffer->tiles[0].data, frame_buffer->tiles[0].data_len)) diff --git a/src/video_rxtx/ultragrid_rtp.cpp b/src/video_rxtx/ultragrid_rtp.cpp index f10e4e544..1cc22f9ee 100644 --- a/src/video_rxtx/ultragrid_rtp.cpp +++ b/src/video_rxtx/ultragrid_rtp.cpp @@ -369,7 +369,7 @@ void *ultragrid_rtp_video_rxtx::receiver_loop() fr = 1; - while (!should_exit_receiver) { + while (!should_exit) { struct timeval timeout; /* Housekeeping and RTCP... */ gettimeofday(&curr_time, NULL);