From bd83a49443a9ad64155794f4c85d6829ab678bf9 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 12 Jun 2012 23:45:12 +0000 Subject: Correctly handle termination with GUI running (fix #833). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4498 a436a847-0d15-0410-975c-d299462d15a1 --- src/ingen/main.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'src/ingen/main.cpp') diff --git a/src/ingen/main.cpp b/src/ingen/main.cpp index abf8aa51..847a08f5 100644 --- a/src/ingen/main.cpp +++ b/src/ingen/main.cpp @@ -180,6 +180,10 @@ main(int argc, char** argv) world, engine_interface.get(), path, parent, symbol); } + // Set up signal handlers that will set quit_flag on interrupt + signal(SIGINT, ingen_interrupt); + signal(SIGTERM, ingen_interrupt); + if (conf.option("gui").get_bool()) { world->run_module("gui"); } else if (conf.option("run").is_valid()) { @@ -194,12 +198,6 @@ main(int argc, char** argv) #endif } else if (world->engine() && !conf.option("gui").get_bool()) { - // Run main loop - - // Set up signal handlers that will set quit_flag on interrupt - signal(SIGINT, ingen_interrupt); - signal(SIGTERM, ingen_interrupt); - // Run engine main loop until interrupt while (world->engine()->main_iteration()) { Glib::usleep(125000); // 1/8 second -- cgit v1.2.1