From e0843e3bc4ad69808645822a08b22a1691822219 Mon Sep 17 00:00:00 2001 From: torben Date: Wed, 11 Nov 2009 18:57:20 +0000 Subject: [PATCH] add segterm handler to netsource for clean exit. git-svn-id: http://subversion.jackaudio.org/jack/trunk/jack@3751 0c269be4-1314-0410-8aa9-9f06e86f4224 --- tools/netsource.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/tools/netsource.c b/tools/netsource.c index da289d2..9874a12 100644 --- a/tools/netsource.c +++ b/tools/netsource.c @@ -33,6 +33,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. #include #include #include +#include #ifdef WIN32 #include @@ -91,6 +92,8 @@ int state_netxruns = 0; int state_currentframe = 0; int state_recv_packet_queue_time = 0; +int quit=0; + int outsockfd; int insockfd; @@ -537,6 +540,12 @@ fprintf (stderr, "usage: jack_netsource -h [options]\n" "\n"); } +void +sigterm_handler( int signal ) +{ + quit = 1; +} + int main (int argc, char *argv[]) { @@ -711,11 +720,14 @@ main (int argc, char *argv[]) /* Now sleep forever... and evaluate the state_ vars */ + signal( SIGTERM, sigterm_handler ); + signal( SIGINT, sigterm_handler ); + statecopy_connected = 2; // make it report unconnected on start. statecopy_latency = state_latency; statecopy_netxruns = state_netxruns; - while (1) + while ( !quit ) { #ifdef WIN32 Sleep (1000); @@ -762,7 +774,6 @@ main (int argc, char *argv[]) } } - /* Never reached. Well we will be a GtkApp someday... */ packet_cache_free (global_packcache); jack_client_close (client); exit (0); -- 2.11.4.GIT