diff options
author | rsc <devnull@localhost> | 2004-12-26 21:50:14 +0000 |
---|---|---|
committer | rsc <devnull@localhost> | 2004-12-26 21:50:14 +0000 |
commit | e5aa96acbf9107cd78f2536364c36f9a15751313 (patch) | |
tree | 9c198bb62564c433c28d2de81a5fb6b782f39903 /src/lib9/fmt/dofmt.c | |
parent | 5c8a0421712a471a00dbf78f7ea054b366ba471b (diff) | |
download | plan9port-e5aa96acbf9107cd78f2536364c36f9a15751313.tar.gz plan9port-e5aa96acbf9107cd78f2536364c36f9a15751313.tar.bz2 plan9port-e5aa96acbf9107cd78f2536364c36f9a15751313.zip |
clean up for unix port
Diffstat (limited to 'src/lib9/fmt/dofmt.c')
-rw-r--r-- | src/lib9/fmt/dofmt.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/lib9/fmt/dofmt.c b/src/lib9/fmt/dofmt.c index cee3f4e4..873d6926 100644 --- a/src/lib9/fmt/dofmt.c +++ b/src/lib9/fmt/dofmt.c @@ -13,7 +13,7 @@ */ #include <stdarg.h> #include <string.h> -#include "utf.h" +#include "plan9.h" #include "fmt.h" #include "fmtdef.h" @@ -339,10 +339,12 @@ __ifmt(Fmt *f) * Unsigned verbs */ switch(f->r){ - case 'o': - case 'u': + /* unsigned by default only on Unix case 'x': case 'X': + */ + case 'o': + case 'u': fl |= FmtUnsigned; break; } @@ -402,7 +404,9 @@ __ifmt(Fmt *f) default: return -1; } - if(!(fl & FmtUnsigned)){ + if(fl & FmtUnsigned) + fl &= ~(FmtSign|FmtSpace); + else{ if(isv && (vlong)vu < 0){ vu = -(vlong)vu; neg = 1; @@ -410,8 +414,6 @@ __ifmt(Fmt *f) u = -(long)u; neg = 1; } - }else{ - fl &= ~(FmtSign|FmtSpace); /* no + for unsigned conversions */ } p = buf + sizeof buf - 1; n = 0; |