summaryrefslogtreecommitdiffstats
path: root/sbin/umount
diff options
context:
space:
mode:
authoriedowse <iedowse@FreeBSD.org>2003-10-29 17:44:36 +0000
committeriedowse <iedowse@FreeBSD.org>2003-10-29 17:44:36 +0000
commita278a10b714546a03ac94514df66a6534cf490d6 (patch)
tree0e38b331b28558b08580a8524e67bb033464b2ff /sbin/umount
parent3b490f22bcd53596da84b83d3078fe359dc79af1 (diff)
downloadFreeBSD-src-a278a10b714546a03ac94514df66a6534cf490d6.zip
FreeBSD-src-a278a10b714546a03ac94514df66a6534cf490d6.tar.gz
When removing trailing slashes, don't remove the first character
of the name if it is '/'. Also fix a comparison between signed and unsigned quantities (pointed out by trhodes).
Diffstat (limited to 'sbin/umount')
-rw-r--r--sbin/umount/umount.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sbin/umount/umount.c b/sbin/umount/umount.c
index 18c920c..6b3ad28 100644
--- a/sbin/umount/umount.c
+++ b/sbin/umount/umount.c
@@ -249,7 +249,7 @@ checkname(char *name, char **typelist)
*/
if (sfs == NULL) {
len = strlen(name);
- while (len > 0 && name[len - 1] == '/')
+ while (len > 1 && name[len - 1] == '/')
name[--len] = '\0';
sfs = checkmntlist(name);
}
@@ -262,7 +262,7 @@ checkname(char *name, char **typelist)
snprintf(buf, sizeof(buf), "%s:%.*s", delimp + 1, delimp - name,
name);
len = strlen(buf);
- while (len > 0 && buf[len - 1] == '/')
+ while (len > 1 && buf[len - 1] == '/')
buf[--len] = '\0';
sfs = checkmntlist(buf);
}
@@ -566,7 +566,7 @@ parsehexfsid(const char *hex, fsid_t *fsid)
if (strlen(hex) != sizeof(*fsid) * 2)
return (-1);
hexbuf[2] = '\0';
- for (i = 0; i < sizeof(*fsid); i++) {
+ for (i = 0; i < (int)sizeof(*fsid); i++) {
hexbuf[0] = hex[i * 2];
hexbuf[1] = hex[i * 2 + 1];
if (!isxdigit(hexbuf[0]) || !isxdigit(hexbuf[1]))
OpenPOWER on IntegriCloud