diff options
author | Jonathan Maw <jonathan.maw@codethink.co.uk> | 2012-08-08 15:53:08 +0100 |
---|---|---|
committer | Jonathan Maw <jonathan.maw@codethink.co.uk> | 2012-08-08 16:10:44 +0100 |
commit | de2ae447f92ae489b5f5814f6646af5e82a53339 (patch) | |
tree | 799d5d5fdf60c703964bf163ba3f85cbb82053b2 | |
parent | ac88b01fc014f28484aa8520a962c24ea4fdc80a (diff) | |
download | node-startup-controller-de2ae447f92ae489b5f5814f6646af5e82a53339.tar.gz |
Fix minor bugs in NodeStartupControllerApplication's SIGINT handler
The SIGINT handler did not cancel the LUCStarter, it does now.
The SIGINT handler made the application quit, but the asynchronous
call to deregister its shutdown consumer from the Node State Manager
does that when it is finished.
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | node-startup-controller/node-startup-controller-application.c | 6 |
2 files changed, 5 insertions, 3 deletions
@@ -17,6 +17,8 @@ x.y.z * Add documentation for the WatchdogClient class * License the reference manual under Creative Commons CC0 1.0 Universal (CC0 1.0) +* Fixed NodeStartupControllerApplication's SIGINT handler redundantly + quitting the application and not cancelling the LUCStarter. 0.9.1 ===== diff --git a/node-startup-controller/node-startup-controller-application.c b/node-startup-controller/node-startup-controller-application.c index 4b637e2..94f3eff 100644 --- a/node-startup-controller/node-startup-controller-application.c +++ b/node-startup-controller/node-startup-controller-application.c @@ -573,15 +573,15 @@ node_startup_controller_application_handle_sigterm (gpointer user_data) g_return_val_if_fail (IS_NODE_STARTUP_CONTROLLER_APPLICATION (application), FALSE); + /* cancel the LUC startup */ + luc_starter_cancel (application->luc_starter); + /* deregister the shutdown consumers of legacy applications */ la_handler_service_deregister_consumers (application->la_handler); /* unregister the shutdown client for the app itself */ node_startup_controller_application_unregister_shutdown_consumer (application); - /* quit the application */ - g_main_loop_quit (application->main_loop); - /* reset the source ID */ application->sigterm_id = 0; |