diff options
author | Shenghou Ma <minux.ma@gmail.com> | 2012-03-17 01:34:44 +0800 |
---|---|---|
committer | Shenghou Ma <minux.ma@gmail.com> | 2012-03-17 01:34:44 +0800 |
commit | 367557cd79ffb5ff82d9d21c2e8098d95083b3c0 (patch) | |
tree | 5d65b00929a9985caae0ed78beed1dfbc9f733b3 /src/cmd/pack | |
parent | cb4ed897a390adf4df71bad311bccf7f2890ca50 (diff) | |
download | go-367557cd79ffb5ff82d9d21c2e8098d95083b3c0.tar.gz go-367557cd79ffb5ff82d9d21c2e8098d95083b3c0.zip |
cmd/pack: also recognize '\\' as path separator in filenames
R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5841051
Diffstat (limited to 'src/cmd/pack')
-rw-r--r-- | src/cmd/pack/ar.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/cmd/pack/ar.c b/src/cmd/pack/ar.c index 8d881f876a..7e07fbc895 100644 --- a/src/cmd/pack/ar.c +++ b/src/cmd/pack/ar.c @@ -1382,11 +1382,14 @@ mesg(int c, char *file) void trim(char *s, char *buf, int n) { - char *p; + char *p, *q; for(;;) { p = strrchr(s, '/'); - if (!p) { /* no slash in name */ + q = strrchr(s, '\\'); + if (q > p) + p = q; + if (!p) { /* no (back)slash in name */ strncpy(buf, s, n); return; } @@ -1394,7 +1397,7 @@ trim(char *s, char *buf, int n) strncpy(buf, p+1, n); return; } - *p = 0; /* strip trailing slash */ + *p = 0; /* strip trailing (back)slash */ } } |