30 lines · 472 B · C
RawDownload
#include <u.h>#include <libc.h>#include <bin.h>#include <httpd.h> inthttpfmt(Fmt *f){	char buf[HMaxWord*2];	Rune r;	char *t, *s;	Htmlesc *l; 	s = va_arg(f->args, char*);	for(t = buf; t < buf + sizeof(buf) - 8; ){		s += chartorune(&r, s);		if(r == 0)			break;		for(l = htmlesc; l->name != nil; l++)			if(l->value == r)				break;		if(l->name != nil){			strcpy(t, l->name);			t += strlen(t);		}else			*t++ = r;	}	*t = 0;	return fmtstrcpy(f, buf);}