From cc70eb347209598a85c7b93c842f5b72ea099849 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Tue, 19 Jan 2010 01:32:32 +0000 Subject: fixed signal handler on windows --- src/signalController.cpp | 4 ++++ src/win32/signalHandler.hpp | 10 +++++----- 2 files changed, 9 insertions(+), 5 deletions(-) (limited to 'src') diff --git a/src/signalController.cpp b/src/signalController.cpp index d35e785..cc31c75 100644 --- a/src/signalController.cpp +++ b/src/signalController.cpp @@ -61,7 +61,11 @@ int SigErrorHandler::handle(const std::string& msg) } // use system specific signal handler +#ifndef _MSC_VER #include "signalHandler.hpp" +#else +#include "win32/signalHandler.hpp" +#endif SignalController::~SignalController() { diff --git a/src/win32/signalHandler.hpp b/src/win32/signalHandler.hpp index f272f1c..e844ba8 100644 --- a/src/win32/signalHandler.hpp +++ b/src/win32/signalHandler.hpp @@ -101,11 +101,11 @@ void registerSignalHandler(SignalController& ctrl) if(!SetConsoleCtrlHandler((PHANDLER_ROUTINE)handle, true)) AnytunError::throwErr() << "Error on SetConsoleCtrlhandler: " << AnytunErrno(GetLastError()); - handler[CTRL_C_EVENT] = new CtrlCHandler; - handler[CTRL_BREAK_EVENT] = new CtrlBreakHandler; - handler[CTRL_CLOSE_EVENT] = new CtrlCloseHandler; - handler[CTRL_LOGOFF_EVENT] = new CtrlLogoffHandler; - handler[CTRL_SHUTDOWN_EVENT] = new CtrlShutdownHandler; + ctrl.handler[CTRL_C_EVENT] = new CtrlCHandler; + ctrl.handler[CTRL_BREAK_EVENT] = new CtrlBreakHandler; + ctrl.handler[CTRL_CLOSE_EVENT] = new CtrlCloseHandler; + ctrl.handler[CTRL_LOGOFF_EVENT] = new CtrlLogoffHandler; + ctrl.handler[CTRL_SHUTDOWN_EVENT] = new CtrlShutdownHandler; } #endif -- cgit v1.2.3