]> Cypherpunks repositories - gostls13.git/commitdiff
fmt: clear width and precision when recovering formatting object from the pool
authorRob Pike <r@golang.org>
Wed, 17 Jan 2024 00:19:53 +0000 (11:19 +1100)
committerRob Pike <r@golang.org>
Tue, 13 Feb 2024 01:04:48 +0000 (01:04 +0000)
Probably a day 1 oversight, and almost always inconsequential, but
there is evidence of occasional trouble. There is no reason not to
clear them.

I tried and failed to write a test to catch this, but the change should
be harmless and is all but certain to fix the problem.

Fixes #61913

Change-Id: I0f7bbb4ab2780d8999d3ff7a35255dc07fb5c7e1
Reviewed-on: https://go-review.googlesource.com/c/go/+/556215
Run-TryBot: Rob Pike <r@golang.org>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@google.com>
Reviewed-by: Than McIntosh <thanm@google.com>
src/fmt/format.go

index 617f78f15ea2b0b71a80f39bbb4cad066c6b9289..b497ad0f1b4742a9c3c5c4a293e04540a6e4f92f 100644 (file)
@@ -53,6 +53,8 @@ type fmt struct {
 
 func (f *fmt) clearflags() {
        f.fmtFlags = fmtFlags{}
+       f.wid = 0
+       f.prec = 0
 }
 
 func (f *fmt) init(buf *buffer) {