Alexandre Julliard : widl: Clean output files when aborting on a
signal.
Alexandre Julliard
julliard at wine.codeweavers.com
Sat May 27 06:34:44 CDT 2006
Module: wine
Branch: refs/heads/master
Commit: 25dc6d912e70d0748da102b3227b93174ffb5b31
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=25dc6d912e70d0748da102b3227b93174ffb5b31
Author: Alexandre Julliard <julliard at winehq.org>
Date: Sat May 27 13:23:47 2006 +0200
widl: Clean output files when aborting on a signal.
---
tools/widl/widl.c | 11 +++++++++++
1 files changed, 11 insertions(+), 0 deletions(-)
diff --git a/tools/widl/widl.c b/tools/widl/widl.c
index b0589b1..c6c4a1c 100644
--- a/tools/widl/widl.c
+++ b/tools/widl/widl.c
@@ -152,6 +152,12 @@ static char *dup_basename_token(const ch
return ret;
}
+/* clean things up when aborting on a signal */
+static void exit_on_signal( int sig )
+{
+ exit(1); /* this will call the atexit functions */
+}
+
int main(int argc,char *argv[])
{
extern char* optarg;
@@ -161,6 +167,11 @@ int main(int argc,char *argv[])
int opti = 0;
signal(SIGSEGV, segvhandler);
+ signal( SIGTERM, exit_on_signal );
+ signal( SIGINT, exit_on_signal );
+#ifdef SIGHUP
+ signal( SIGHUP, exit_on_signal );
+#endif
now = time(NULL);
More information about the wine-cvs
mailing list