diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-11-09 17:09:20 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-11-09 17:09:20 +0100 |
commit | 663aff7fb2394784e4d5565f57f84a43d69115b9 (patch) | |
tree | ce6bf39ec372a516fe68bffba5dfd804bf360ffd /sys/src/cmd/aux/kbdfs/kbdfs.c | |
parent | 01d28b9d89c069afe4a43afe04d31ddb89524b24 (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.c | 9 |
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 */ |