projects
/
lttngtop.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
exit cleanly
[lttngtop.git]
/
src
/
cursesdisplay.c
diff --git
a/src/cursesdisplay.c
b/src/cursesdisplay.c
index 25fe1f94e075836daf83d85861407e1bd1817103..c8ac5db55f93c8a990adcbd699f29d6dd3c5396e 100644
(file)
--- a/
src/cursesdisplay.c
+++ b/
src/cursesdisplay.c
@@
-74,11
+74,13
@@
void reset_ncurses()
{
curs_set(1);
endwin();
{
curs_set(1);
endwin();
-
exit(0)
;
+
quit = 1
;
}
static void handle_sigterm(int signal)
{
}
static void handle_sigterm(int signal)
{
+ fprintf(stderr, "caugh signal\n");
+ pthread_cancel(keyboard_thread);
reset_ncurses();
}
reset_ncurses();
}
@@
-119,6
+121,7
@@
void init_screen()
define_key("\033[17;2~", KEY_F(18));
}
signal(SIGTERM, handle_sigterm);
define_key("\033[17;2~", KEY_F(18));
}
signal(SIGTERM, handle_sigterm);
+ signal(SIGINT, handle_sigterm);
mousemask(BUTTON1_CLICKED, NULL);
refresh();
}
mousemask(BUTTON1_CLICKED, NULL);
refresh();
}
@@
-1491,6
+1494,8
@@
void *handle_keyboard(void *p)
case KEY_F(10):
case 'q':
reset_ncurses();
case KEY_F(10):
case 'q':
reset_ncurses();
+ /* exit keyboard thread */
+ pthread_exit(0);
break;
case 't':
toggle_threads *= -1;
break;
case 't':
toggle_threads *= -1;
@@
-1502,7
+1507,6
@@
void *handle_keyboard(void *p)
} else {
resume_display();
}
} else {
resume_display();
}
- break;
case 'r':
toggle_pref_panel();
break;
case 'r':
toggle_pref_panel();
break;
This page took
0.023338 seconds
and
4
git commands to generate.