aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--trace-read.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/trace-read.c b/trace-read.c
index bbe34ba..a5c27e2 100644
--- a/trace-read.c
+++ b/trace-read.c
@@ -32,6 +32,7 @@
32#include <sys/mman.h> 32#include <sys/mman.h>
33#include <pthread.h> 33#include <pthread.h>
34#include <fcntl.h> 34#include <fcntl.h>
35#include <signal.h>
35#include <unistd.h> 36#include <unistd.h>
36#include <ctype.h> 37#include <ctype.h>
37#include <errno.h> 38#include <errno.h>
@@ -553,6 +554,12 @@ struct tracecmd_input *read_trace_header(void)
553 return tracecmd_alloc_fd(input_fd); 554 return tracecmd_alloc_fd(input_fd);
554} 555}
555 556
557static void sig_end(int sig)
558{
559 fprintf(stderr, "trace-cmd: Received SIGINT\n");
560 exit(0);
561}
562
556void trace_report (int argc, char **argv) 563void trace_report (int argc, char **argv)
557{ 564{
558 struct tracecmd_input *handle; 565 struct tracecmd_input *handle;
@@ -574,6 +581,8 @@ void trace_report (int argc, char **argv)
574 if (strcmp(argv[1], "report") != 0) 581 if (strcmp(argv[1], "report") != 0)
575 usage(argv); 582 usage(argv);
576 583
584 signal(SIGINT, sig_end);
585
577 for (;;) { 586 for (;;) {
578 int option_index = 0; 587 int option_index = 0;
579 static struct option long_options[] = { 588 static struct option long_options[] = {