]> Cypherpunks repositories - gostls13.git/commitdiff
text/tabwriter: add recovered panic message to rethrow
authorNicolas Hillegeer <aktau@google.com>
Wed, 28 Feb 2024 23:21:18 +0000 (15:21 -0800)
committerGopher Robot <gobot@golang.org>
Thu, 29 Feb 2024 16:46:34 +0000 (16:46 +0000)
Without it, there is little information to debug why the original write
failed.

Change-Id: I21615ab7ca402115d02becdbd11bbacde55b98b8
Reviewed-on: https://go-review.googlesource.com/c/go/+/567955
Auto-Submit: Nicolas Hillegeer <aktau@google.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Robert Griesemer <gri@google.com>
Auto-Submit: Robert Griesemer <gri@google.com>

src/text/tabwriter/tabwriter.go
src/text/tabwriter/tabwriter_test.go

index 18ff667ba8a1933a0714640f3aa0d414c3e3b69c..976ad251aaeae37a30a365d8a7c2b6a5c9ea8b01 100644 (file)
@@ -12,6 +12,7 @@
 package tabwriter
 
 import (
+       "fmt"
        "io"
        "unicode/utf8"
 )
@@ -476,7 +477,7 @@ func (b *Writer) handlePanic(err *error, op string) {
                        *err = nerr.err
                        return
                }
-               panic("tabwriter: panic during " + op)
+               panic(fmt.Sprintf("tabwriter: panic during %s (%v)", op, e))
        }
 }
 
index a51358dbedd0f88085087d72fd26f8221578725f..2bb54a25e2fb56ec787aa069ffca49167f08d48c 100644 (file)
@@ -635,7 +635,7 @@ func wantPanicString(t *testing.T, want string) {
 }
 
 func TestPanicDuringFlush(t *testing.T) {
-       defer wantPanicString(t, "tabwriter: panic during Flush")
+       defer wantPanicString(t, "tabwriter: panic during Flush (cannot write)")
        var p panicWriter
        w := new(Writer)
        w.Init(p, 0, 0, 5, ' ', 0)
@@ -645,7 +645,7 @@ func TestPanicDuringFlush(t *testing.T) {
 }
 
 func TestPanicDuringWrite(t *testing.T) {
-       defer wantPanicString(t, "tabwriter: panic during Write")
+       defer wantPanicString(t, "tabwriter: panic during Write (cannot write)")
        var p panicWriter
        w := new(Writer)
        w.Init(p, 0, 0, 5, ' ', 0)