summaryrefslogtreecommitdiff
path: root/cpp/src/slice2cppe
diff options
context:
space:
mode:
authorDwayne Boone <dwayne@zeroc.com>2008-01-17 13:11:19 -0330
committerDwayne Boone <dwayne@zeroc.com>2008-01-17 13:11:19 -0330
commita2e4ce4b60e9fac86c2cf81e3f22845a699efaa6 (patch)
treebbb1b67428ee22ec495456dc1a6bdd46f8e45236 /cpp/src/slice2cppe
parentBug 2261 - renaming Ice for C# to Ice for .NET (diff)
downloadice-a2e4ce4b60e9fac86c2cf81e3f22845a699efaa6.tar.bz2
ice-a2e4ce4b60e9fac86c2cf81e3f22845a699efaa6.tar.xz
ice-a2e4ce4b60e9fac86c2cf81e3f22845a699efaa6.zip
Bug 2540 - trap ctrl-C and unlink output files
Diffstat (limited to 'cpp/src/slice2cppe')
-rw-r--r--cpp/src/slice2cppe/Gen.cpp5
-rw-r--r--cpp/src/slice2cppe/Main.cpp3
2 files changed, 8 insertions, 0 deletions
diff --git a/cpp/src/slice2cppe/Gen.cpp b/cpp/src/slice2cppe/Gen.cpp
index 9146edd8111..89fcbd1e155 100644
--- a/cpp/src/slice2cppe/Gen.cpp
+++ b/cpp/src/slice2cppe/Gen.cpp
@@ -9,6 +9,7 @@
#include <Gen.h>
#include <Slice/CPlusPlusUtil.h>
+#include <Slice/SignalHandler.h>
#include <IceUtil/Functional.h>
#include <IceUtil/Iterator.h>
@@ -93,6 +94,8 @@ Slice::Gen::Gen(const string& name, const string& base, const string& headerExte
fileImplH = dir + '/' + fileImplH;
fileImplC = dir + '/' + fileImplC;
}
+ SignalHandler::addFile(fileImplH);
+ SignalHandler::addFile(fileImplC);
struct stat st;
if(stat(fileImplH.c_str(), &st) == 0)
@@ -138,6 +141,8 @@ Slice::Gen::Gen(const string& name, const string& base, const string& headerExte
fileH = dir + '/' + fileH;
fileC = dir + '/' + fileC;
}
+ SignalHandler::addFile(fileH);
+ SignalHandler::addFile(fileC);
H.open(fileH.c_str());
if(!H)
diff --git a/cpp/src/slice2cppe/Main.cpp b/cpp/src/slice2cppe/Main.cpp
index 12f630139ac..4b7ad83e54d 100644
--- a/cpp/src/slice2cppe/Main.cpp
+++ b/cpp/src/slice2cppe/Main.cpp
@@ -9,6 +9,7 @@
#include <IceUtil/Options.h>
#include <Slice/Preprocessor.h>
+#include <Slice/SignalHandler.h>
#include <Gen.h>
using namespace std;
@@ -141,6 +142,8 @@ main(int argc, char* argv[])
for(i = args.begin(); i != args.end(); ++i)
{
+ SignalHandler sigHandler;
+
if(depend)
{
Preprocessor icecpp(argv[0], *i, cppArgs);