diff options
author | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2001-01-16 13:44:18 +0000 |
---|---|---|
committer | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2001-01-16 13:44:18 +0000 |
commit | 757168e2c8af374436108266cc3cfd32a946a590 (patch) | |
tree | 293929274f50de8733f00c4ae561a85e9c5fc16f /Src/prompt.c | |
parent | 052316fea3b74599de04fb3990a444b0ba08b04b (diff) | |
download | zsh-757168e2c8af374436108266cc3cfd32a946a590.tar.gz zsh-757168e2c8af374436108266cc3cfd32a946a590.tar.xz zsh-757168e2c8af374436108266cc3cfd32a946a590.zip |
remove 13108 (trap queues); replace with signal queueing to ensure that user signal handlers are only executed when it is safe to run them (13365)
Diffstat (limited to 'Src/prompt.c')
-rw-r--r-- | Src/prompt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/Src/prompt.c b/Src/prompt.c index cca6da21f..b90bfff2a 100644 --- a/Src/prompt.c +++ b/Src/prompt.c @@ -372,12 +372,15 @@ putpromptchar(int doprint, int endchar) bp += strlen(bp); break; case 'M': + queue_signals(); if ((hostnam = getsparam("HOST"))) stradd(hostnam); + unqueue_signals(); break; case 'm': if (!arg) arg++; + queue_signals(); if (!(hostnam = getsparam("HOST"))) break; if (arg < 0) { @@ -394,6 +397,7 @@ putpromptchar(int doprint, int endchar) stradd(hostnam); *ss = t0; } + unqueue_signals(); break; case 'S': txtchangeset(TXTSTANDOUT, TXTNOSTANDOUT); |