From d5f2d2cc3fc7c2d3701e906df5d2d53781c4ee9c Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Tue, 25 Sep 2018 20:15:24 +0200 Subject: webfs: fix memory leak in Nfmt(), use libc's new idn functions --- sys/src/cmd/webfs/url.c | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'sys/src/cmd/webfs/url.c') diff --git a/sys/src/cmd/webfs/url.c b/sys/src/cmd/webfs/url.c index 82e0a4c2b..65ed53802 100644 --- a/sys/src/cmd/webfs/url.c +++ b/sys/src/cmd/webfs/url.c @@ -73,15 +73,12 @@ Efmt(Fmt *f) int Nfmt(Fmt *f) { - char *d, *s; + char d[Domlen], *s; s = va_arg(f->args, char*); - d = emalloc(Domlen); - if(utf2idn(s, d, Domlen) == nil) - d = s; - fmtprint(f, "%s", d); - if(d != s) - free(d); + if(utf2idn(s, d, sizeof(d)) != nil) + s = d; + fmtprint(f, "%s", s); return 0; } -- cgit v1.2.3