thandle 0 precision better - plan9port - [fork] Plan 9 from user space (HTM) git clone git://src.adamsgaard.dk/plan9port (DIR) Log (DIR) Files (DIR) Refs (DIR) README (DIR) LICENSE --- (DIR) commit f92a2ceba411689890e6f8aab81a03f30b802b10 (DIR) parent 5cb6d5d9c236f7a11b7c9e0d2c991e1bf9ddd363 (HTM) Author: rsc <devnull@localhost> Date: Thu, 19 May 2005 14:39:00 +0000 handle 0 precision better Diffstat: M src/lib9/encodefmt.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) --- (DIR) diff --git a/src/lib9/encodefmt.c b/src/lib9/encodefmt.c t@@ -11,16 +11,18 @@ encodefmt(Fmt *f) uchar *b; char obuf[64]; // rsc optimization - if(!(f->flags&FmtPrec) || f->prec < 1) - goto error; - b = va_arg(f->args, uchar*); if(b == 0) return fmtstrcpy(f, "<nil>"); ilen = f->prec; f->prec = 0; + + if(!(f->flags&FmtPrec) || ilen < 0) + goto error; + f->flags &= ~FmtPrec; + switch(f->r){ case '<': len = (8*ilen+4)/5 + 3;