diff options
author | Russ Cox <rsc@golang.org> | 2013-03-07 14:38:49 -0500 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2013-03-07 14:38:49 -0500 |
commit | 61542433243bd4d6be4f4ffb12568b9be41ad688 (patch) | |
tree | eeea83feee2711adb5bce3db7d54276a5feb78b3 | |
parent | 18c772bbe7d9019aa66d97ee28b4c9d7ca895db8 (diff) | |
download | go-61542433243bd4d6be4f4ffb12568b9be41ad688.tar.gz |
lib9: fix windows build (don't use runesmprint)
TBR=golang-dev
CC=golang-dev
https://codereview.appspot.com/7575046
-rw-r--r-- | src/lib9/tempdir_windows.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/lib9/tempdir_windows.c b/src/lib9/tempdir_windows.c index 8e9322dc8..1a530059a 100644 --- a/src/lib9/tempdir_windows.c +++ b/src/lib9/tempdir_windows.c @@ -30,18 +30,16 @@ WinRune* torune(char *p) { int i, n; - Rune *r1; + Rune rr; WinRune *r; - r1 = runesmprint("%s", p); - n = 0; - while(r1[n] != '\0') - n++; - n++; - r = malloc(n*sizeof r[0]); - for(i=0; i<n; i++) - r[i] = r1[i]; - free(r1); + n = utflen(p); + r = malloc((n+1)*sizeof r[0]); + for(i=0; i<n; i++) { + p += chartorune(&rr, p); + r[i] = rr; + } + r[n] = '\0'; return r; } |