diff options
Diffstat (limited to 'cpp/src/Slice/SignalHandler.cpp')
-rw-r--r-- | cpp/src/Slice/SignalHandler.cpp | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/cpp/src/Slice/SignalHandler.cpp b/cpp/src/Slice/SignalHandler.cpp deleted file mode 100644 index 71b4701c80d..00000000000 --- a/cpp/src/Slice/SignalHandler.cpp +++ /dev/null @@ -1,86 +0,0 @@ -// ********************************************************************** -// -// Copyright (c) 2003-2008 ZeroC, Inc. All rights reserved. -// -// This copy of Ice is licensed to you under the terms described in the -// ICE_LICENSE file included in this distribution. -// -// ********************************************************************** - -#include <IceUtil/DisableWarnings.h> -#include <Slice/SignalHandler.h> -#include <vector> -#include <cstdlib> - -#ifndef _WIN32 -# include <signal.h> -#endif - - -using namespace std; -using namespace Slice; - -// -// Signal handler routine to unlink output files in case of translator -// being interrupted. -// -static SignalHandlerCallback _callback = 0; -static vector<string> _fileList; - -#ifdef _WIN32 -static BOOL WINAPI signalHandler(DWORD dwCtrlType) -#else -static void signalHandler(int signal) -#endif -{ - cout << "Signal handler called" << endl; - - if(_callback != 0) - { - _callback(); - } - - for(unsigned int i = 0; i < _fileList.size(); ++i) - { - remove(_fileList[i].c_str()); - } - - exit(1); -} - - -Slice::SignalHandler::SignalHandler() -{ -#ifdef _WIN32 - SetConsoleCtrlHandler(signalHandler, TRUE); -#else - sigset(SIGHUP, signalHandler); - sigset(SIGINT, signalHandler); - sigset(SIGQUIT, signalHandler); -#endif -} - -Slice::SignalHandler::~SignalHandler() -{ -#ifdef _WIN32 - SetConsoleCtrlHandler(signalHandler, FALSE); -#else - sigset(SIGHUP, SIG_DFL); - sigset(SIGINT, SIG_DFL); - sigset(SIGQUIT, SIG_DFL); -#endif - - _fileList.clear(); -} - -void -Slice::SignalHandler::setCallback(SignalHandlerCallback callback) -{ - _callback = callback; -} - -void -Slice::SignalHandler::addFile(const string& file) -{ - _fileList.push_back(file); -} |