summaryrefslogtreecommitdiff
path: root/sys/src/libauthsrv
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2017-10-04 05:01:54 +0200
committercinap_lenrek <cinap_lenrek@felloff.net>2017-10-04 05:01:54 +0200
commitc11a3bb3b1e2713b1f48fd7df8ead818f62cf4ac (patch)
tree213371e4c3e782c17e9dbed80c1f8f89f6f45aca /sys/src/libauthsrv
parent19b026bdbbe297c3d404f883b27409ae036c8a42 (diff)
libauthsrv: preserve readcons() error message from read() error
Diffstat (limited to 'sys/src/libauthsrv')
-rw-r--r--sys/src/libauthsrv/readcons.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/src/libauthsrv/readcons.c b/sys/src/libauthsrv/readcons.c
index d7f9b99ee..8a7a3af27 100644
--- a/sys/src/libauthsrv/readcons.c
+++ b/sys/src/libauthsrv/readcons.c
@@ -37,8 +37,13 @@ readcons(char *prompt, char *def, int raw)
s = p, p += n;
}
- if(read(fdin, p, 1) <= 0 || *p == 0x7f)
+ n = read(fdin, p, 1);
+ if(n < 0)
break;
+ if(n == 0 || *p == 0x7f){
+ werrstr("input aborted");
+ break;
+ }
if(*p == '\n' || *p == '\r'){
if(p == s && def != nil){