summaryrefslogtreecommitdiff
path: root/edit-editline.c
diff options
context:
space:
mode:
Diffstat (limited to 'edit-editline.c')
-rw-r--r--edit-editline.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/edit-editline.c b/edit-editline.c
index 85e3f40..2069aef 100644
--- a/edit-editline.c
+++ b/edit-editline.c
@@ -29,7 +29,11 @@ void *edit_begin(int fd) {
}
/*
+static void (*oldint)(int), (*oldquit)(int);
+
static void edit_catcher(int sig) {
+ sys_signal(SIGINT, oldint);
+ sys_signal(SIGQUIT, oldquit);
write(2, "\n", 1);
rc_raise(eError);
}
@@ -42,7 +46,6 @@ char *edit_alloc(void *cookie, size_t *count) {
const char *r;
HistEvent he;
struct cookie *c = cookie;
- void (*oldint)(int), (*oldquit)(int);
oldint = sys_signal(SIGINT, edit_catcher);
oldquit = sys_signal(SIGQUIT, edit_catcher);