diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-05-02 17:32:01 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-05-02 17:32:01 +0200 |
commit | ac88ce4f7f19be1aae1fdf390fa870b4be8dc3f5 (patch) | |
tree | 47df6acf41dd8d2dc607b89af9d4667935d0c952 /sys/src/cmd/acme | |
parent | 7ff6ea0f70307d4b82e6df69eb1310a6e27aa4ad (diff) |
make bind(2) error handling consistent
The mount() and bind() syscalls return -1 on error,
and the mountid sequence number on success.
The manpage states that the mountid sequence number
is a positive integer, but the kernels implementation
currently uses a unsigned 32-bit integer and does not
guarantee that the mountid will not become negative.
Most code just cares about the error, so test for
the -1 error value only.
Diffstat (limited to 'sys/src/cmd/acme')
-rw-r--r-- | sys/src/cmd/acme/fsys.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/src/cmd/acme/fsys.c b/sys/src/cmd/acme/fsys.c index 7235bbe22..d29f4d301 100644 --- a/sys/src/cmd/acme/fsys.c +++ b/sys/src/cmd/acme/fsys.c @@ -268,13 +268,12 @@ fsysmount(Rune *dir, int ndir, Rune **incl, int nincl) close(sfd); m = fsysaddid(dir, ndir, incl, nincl); sprint(buf, "%d", m->id); - if(mount(cfd, -1, "/mnt/acme", MREPL, buf) < 0){ + if(mount(cfd, -1, "/mnt/acme", MREPL, buf) == -1){ fsysdelid(m); return nil; } - close(cfd); bind("/mnt/acme", "/mnt/wsys", MREPL); - if(bind("/mnt/acme", "/dev", MBEFORE) < 0){ + if(bind("/mnt/acme", "/dev", MBEFORE) == -1){ fsysdelid(m); return nil; } |