]> git.sesse.net Git - nageru/commitdiff
Hook up SIGUSR1 for testing clean shutdown.
authorSteinar H. Gunderson <sgunderson@bigfoot.com>
Tue, 19 Apr 2016 00:18:01 +0000 (02:18 +0200)
committerSteinar H. Gunderson <sgunderson@bigfoot.com>
Tue, 19 Apr 2016 00:18:01 +0000 (02:18 +0200)
mainwindow.cpp

index 0b1ad4a93eefc193f1d418d5a502825b1d676f49..5adae5cd92742b32e9c0533e9f643e3f0b3a69d3 100644 (file)
@@ -39,6 +39,11 @@ void schedule_cut_signal(int ignored)
        global_mixer->schedule_cut();
 }
 
+void quit_signal(int ignored)
+{
+       global_mixer->quit();
+}
+
 }  // namespace
 
 MainWindow *global_mainwindow = nullptr;
@@ -150,6 +155,12 @@ void MainWindow::mixer_created(Mixer *mixer)
        act.sa_handler = schedule_cut_signal;
        act.sa_flags = SA_RESTART;
        sigaction(SIGHUP, &act, nullptr);
+
+       // Mostly for debugging. Don't override SIGINT, that's so evil if
+       // shutdown isn't instant.
+       act.sa_handler = quit_signal;
+       act.sa_flags = SA_RESTART;
+       sigaction(SIGUSR1, &act, nullptr);
 }
 
 void MainWindow::mixer_shutting_down()