summaryrefslogtreecommitdiff
path: root/sys/src/cmd/hgfs
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@centraldogma>2011-10-28 03:44:58 +0200
committercinap_lenrek <cinap_lenrek@centraldogma>2011-10-28 03:44:58 +0200
commit01a7c491fc2a2b826e9944dc6418325f052fb11c (patch)
tree4f795ec15672cdcd0e371e1cc8340046cd4195f0 /sys/src/cmd/hgfs
parent6b2b4b58fba2ce432bda596a53355b4daabd5612 (diff)
hgfs: fix sign bug in path mangeling
Diffstat (limited to 'sys/src/cmd/hgfs')
-rw-r--r--sys/src/cmd/hgfs/tree.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/src/cmd/hgfs/tree.c b/sys/src/cmd/hgfs/tree.c
index bb4fcb40c..0a45f3d64 100644
--- a/sys/src/cmd/hgfs/tree.c
+++ b/sys/src/cmd/hgfs/tree.c
@@ -26,7 +26,7 @@ nodepath(char *s, char *e, Revnode *nd, int mangle)
for(i=0; i<nelem(frogs); i++){
l = strlen(frogs[i]);
if((strncmp(frogs[i], p, l) == 0) && (p[l] == 0 || p[l] == '.'))
- return seprint(s, e, "%.2s~%.2x%s", p, p[2], p+3);
+ return seprint(s, e, "%.2s~%.2x%s", p, (uchar)p[2], p+3);
}
for(; s+4 < e && *p; p++){
if(*p == '_'){
@@ -35,9 +35,9 @@ nodepath(char *s, char *e, Revnode *nd, int mangle)
} else if(*p >= 'A' && *p <= 'Z'){
*s++ = '_';
*s++ = 'a' + (*p - 'A');
- } else if(*p >= 126 || strchr("\\:*?\"<>|", *p)){
+ } else if((uchar)*p >= 126 || strchr("\\:*?\"<>|", *p)){
*s++ = '~';
- s = seprint(s, e, "%.2x", *p);
+ s = seprint(s, e, "%.2x", (uchar)*p);
} else
*s++ = *p;
}