diff --git a/components/common/cpp/src/configuration.cpp b/components/common/cpp/src/configuration.cpp index 991fdc120b46b5f123bf31a89bb9a25df097aafc..f6666eaffceeec8a39dbd86a5266f99697dfa7ba 100644 --- a/components/common/cpp/src/configuration.cpp +++ b/components/common/cpp/src/configuration.cpp @@ -437,9 +437,14 @@ static void process_options(Configurable *root, const map<string, string> &opts) } } +static bool sig_int_called = false; + static void signalIntHandler( int signum ) { std::cout << "Closing...\n"; + if (sig_int_called) quick_exit(-1); + sig_int_called = true; + // cleanup and close up stuff here // terminate program