Mercurial > projects > dstress
changeset 923:bcba57cc349c
removed uncatchable signal action
author | thomask |
---|---|
date | Sun, 19 Mar 2006 15:16:42 +0000 |
parents | 95160f4d06f8 |
children | 1d892841fc86 |
files | crashRun.c |
diffstat | 1 files changed, 8 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/crashRun.c Sun Mar 19 15:16:13 2006 +0000 +++ b/crashRun.c Sun Mar 19 15:16:42 2006 +0000 @@ -81,6 +81,8 @@ #endif +char* cmd; + /* let's start implementing :) */ void handleSignal(int signalID){ @@ -173,9 +175,6 @@ signal(SIGBUS, &handleSignal); #endif signal(SIGFPE, &handleSignal); -#ifdef SIGKILL - signal(SIGKILL, &handleSignal); -#endif #ifdef SIGUSR1 signal(SIGUSR1, &handleSignal); #endif @@ -211,11 +210,14 @@ #endif /* USE_POSIX */ } +void cleanCommand(){ + free(cmd); +} + char* reconstructCmd(int argc, char** argv){ size_t cmdLen=1; size_t tmpLen; size_t i; - char* cmd; char* tmp; for(i=0; i<argc; i++){ @@ -224,6 +226,8 @@ } cmd = (char*)malloc(cmdLen); + atexit(&cleanCommand); + *cmd = '\x00'; tmp = cmd; @@ -236,7 +240,6 @@ } int main(int argc, char** argv){ - char* cmd; if(argc<2){ fprintf(stderr, "name of command to call required\n"); return EXIT_FAILURE;