diff options
author | aiju <aiju@phicode.de> | 2012-08-08 23:14:42 +0200 |
---|---|---|
committer | aiju <aiju@phicode.de> | 2012-08-08 23:14:42 +0200 |
commit | 34bf0ce496a36746a4f6746f8a187dd66fe7a136 (patch) | |
tree | 2df673d1f2ce13e6071e3dd31bde35fb9d482e55 /sys/src/cmd/hjfs/auth.c | |
parent | 2e19497159b0302069cac91a419923190cd0f21e (diff) |
hjfs: various changes
Diffstat (limited to 'sys/src/cmd/hjfs/auth.c')
-rw-r--r-- | sys/src/cmd/hjfs/auth.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/sys/src/cmd/hjfs/auth.c b/sys/src/cmd/hjfs/auth.c index efd026066..07ab35042 100644 --- a/sys/src/cmd/hjfs/auth.c +++ b/sys/src/cmd/hjfs/auth.c @@ -191,7 +191,7 @@ userssave(Fs *fs, Chan *ch) { User *u, *v; int nu, i; - char buf[512], *p, *e; + char buf[512], *p, *e, *s; uvlong off; rlock(&fs->udatal); @@ -206,8 +206,11 @@ userssave(Fs *fs, Chan *ch) p = buf; e = buf + sizeof(buf); p = seprint(p, e, "%d:%s:", v->uid, v->name); - if(v->lead != NOUID) - p = strecpy(p, e, uid2name(fs, v->lead)); + if(v->lead != NOUID){ + s = uid2name(fs, v->lead); + p = strecpy(p, e, s); + free(s); + } if(p < e) *p++ = ':'; for(i = 0; i < v->nmemb; i++){ @@ -215,7 +218,9 @@ userssave(Fs *fs, Chan *ch) continue; if(p < e && i > 0) *p++ = ','; - p = strecpy(p, e, uid2name(fs, v->memb[i])); + s = uid2name(fs, v->memb[i]); + p = strecpy(p, e, s); + free(s); } *p++ = '\n'; if(ch == nil) |