diff options
| -rw-r--r-- | sys/src/cmd/ip/ftpfs/proto.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/src/cmd/ip/ftpfs/proto.c b/sys/src/cmd/ip/ftpfs/proto.c index 0231dd7c9..14fe56ee9 100644 --- a/sys/src/cmd/ip/ftpfs/proto.c +++ b/sys/src/cmd/ip/ftpfs/proto.c @@ -1517,14 +1517,17 @@ fromlatin1(char *from) { char *p, *to; Rune r; + int n; if(os == Plan9) return nil; /* don't convert if we don't have to */ - for(p = from; *p; p++) - if(*p & 0x80) + for(p = from; *p; p += n){ + n = chartorune(&r, p); + if(r == Runeerror) break; + } if(*p == 0) return nil; |
