summaryrefslogtreecommitdiff
path: root/sys/src/cmd/aux/kbdfs/kbdfs.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-11-09 17:09:20 +0100
committercinap_lenrek <cinap_lenrek@gmx.de>2012-11-09 17:09:20 +0100
commit663aff7fb2394784e4d5565f57f84a43d69115b9 (patch)
treece6bf39ec372a516fe68bffba5dfd804bf360ffd /sys/src/cmd/aux/kbdfs/kbdfs.c
parent01d28b9d89c069afe4a43afe04d31ddb89524b24 (diff)
kbdfs: kill input buffer on interrupt key
Diffstat (limited to 'sys/src/cmd/aux/kbdfs/kbdfs.c')
-rw-r--r--sys/src/cmd/aux/kbdfs/kbdfs.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/sys/src/cmd/aux/kbdfs/kbdfs.c b/sys/src/cmd/aux/kbdfs/kbdfs.c
index 5cc423988..7373ef1b0 100644
--- a/sys/src/cmd/aux/kbdfs/kbdfs.c
+++ b/sys/src/cmd/aux/kbdfs/kbdfs.c
@@ -564,13 +564,14 @@ lineproc(void *aux)
do {
recv(cook, &r);
switch(r){
+ case Kdel:
+ if(notefd < 0)
+ continue;
+ write(notefd, "interrupt", 9);
+ /* no break */
case '\0': /* flush */
nr = 0;
continue;
- case Kdel:
- if(notefd >= 0)
- write(notefd, "interrupt", 9);
- continue;
case Kbs: /* ^H: erase character */
case Knack: /* ^U: erase line */
case Ketb: /* ^W: erase word */