summaryrefslogtreecommitdiff
path: root/sys/src/libc
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@felloff.net>2014-02-25 20:14:08 +0100
committercinap_lenrek <cinap_lenrek@felloff.net>2014-02-25 20:14:08 +0100
commitb4d13efc1e19d9ae0f78e2a018f8b994b036ac97 (patch)
treeff13ee915134e9acd929b8997a89bdeba86d6803 /sys/src/libc
parentc4fec93ab9d544a72b189a602103ebed48a9829e (diff)
csdial: avoid useless werrstr() call on success (thanks mischief)
Diffstat (limited to 'sys/src/libc')
-rw-r--r--sys/src/libc/9sys/dial.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/sys/src/libc/9sys/dial.c b/sys/src/libc/9sys/dial.c
index bf601ed9f..4ac54d46c 100644
--- a/sys/src/libc/9sys/dial.c
+++ b/sys/src/libc/9sys/dial.c
@@ -99,29 +99,30 @@ csdial(DS *ds)
* loop through each address from the connection server till
* we get one that works.
*/
- *besterr = 0;
rv = -1;
+ *err = 0;
+ *besterr = 0;
seek(fd, 0, 0);
while((n = read(fd, buf, sizeof(buf) - 1)) > 0){
buf[n] = 0;
p = strchr(buf, ' ');
- if(p == 0)
+ if(p == nil)
continue;
*p++ = 0;
rv = call(buf, p, ds);
if(rv >= 0)
break;
- err[0] = '\0';
+ *err = 0;
errstr(err, sizeof err);
if(strstr(err, "does not exist") == 0)
strcpy(besterr, err);
}
close(fd);
- if(rv < 0 && *besterr)
- werrstr("%s", besterr);
- else
- werrstr("%s", err);
+ /* restore errstr if any */
+ if(rv < 0 && *err)
+ errstr(*besterr ? besterr : err, sizeof err);
+
return rv;
}