]> Cypherpunks repositories - gostls13.git/commitdiff
% x inserts spaces between hex bytes in string/*[]byte
authorRuss Cox <rsc@golang.org>
Tue, 25 Nov 2008 17:23:13 +0000 (09:23 -0800)
committerRuss Cox <rsc@golang.org>
Tue, 25 Nov 2008 17:23:13 +0000 (09:23 -0800)
R=r
DELTA=7  (7 added, 0 deleted, 0 changed)
OCL=19967
CL=19978

src/lib/fmt/fmt_test.go
src/lib/fmt/format.go

index ec1e9951bff4181823babbe06fb300b3fadaa126..4b423c617fb12673704e208744605081e16f95d4 100644 (file)
@@ -45,6 +45,7 @@ var fmttests = []FmtTest{
        // basic bytes
        FmtTest{ "%s",  Bytes("abc"),   "abc" },
        FmtTest{ "%x",  Bytes("abc"),   "616263" },
+       FmtTest{ "% x", Bytes("abc"),   "61 62 63" },
        FmtTest{ "%x",  Bytes("xyz"),   "78797a" },
        FmtTest{ "%X",  Bytes("xyz"),   "78797A" },
        FmtTest{ "%q",  Bytes("abc"),   `"abc"` },
index 64d6c9bc99f9d16f9c4fb4c7e213f21ba6fe0654..d1c20a513aa64663711f84ae3e967ebe16bacf7c 100644 (file)
@@ -374,6 +374,9 @@ func (f *Fmt) s(s string) *Fmt {
 func (f *Fmt) sx(s string) *Fmt {
        t := "";
        for i := 0; i < len(s); i++ {
+               if i > 0 && f.space {
+                       t += " ";
+               }
                v := s[i];
                t += string(ldigits[v>>4]);
                t += string(ldigits[v&0xF]);