From cfa6ff68868284de47db88318a835c00b36d8777 Mon Sep 17 00:00:00 2001 From: Scott Blum Date: Wed, 2 Sep 2026 11:25:29 -0400 Subject: [PATCH] Fix nil input stream panic under Go jsonv2 --- cmd/grpcurl/grpcurl.go | 3 ++- format_test.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/cmd/grpcurl/grpcurl.go b/cmd/grpcurl/grpcurl.go index da58705..61c0f16 100644 --- a/cmd/grpcurl/grpcurl.go +++ b/cmd/grpcurl/grpcurl.go @@ -4,6 +4,7 @@ package main import ( + "bytes" "context" "flag" "fmt" @@ -764,7 +765,7 @@ func main() { // create a request to invoke an RPC tmpl := grpcurl.MakeTemplate(dsc) options := grpcurl.FormatOptions{EmitJSONDefaultFields: true} - _, formatter, err := grpcurl.RequestParserAndFormatter(grpcurl.Format(*format), descSource, nil, options) + _, formatter, err := grpcurl.RequestParserAndFormatter(grpcurl.Format(*format), descSource, bytes.NewReader(nil), options) if err != nil { fail(err, "Failed to construct formatter for %q", *format) } diff --git a/format_test.go b/format_test.go index 96f64ef..6648448 100644 --- a/format_test.go +++ b/format_test.go @@ -128,7 +128,7 @@ func TestHandler(t *testing.T) { verbose := verbosityLevel > 0 - _, formatter, err := RequestParserAndFormatter(format, source, nil, FormatOptions{IncludeTextSeparator: !verbose}) + _, formatter, err := RequestParserAndFormatter(format, source, bytes.NewReader(nil), FormatOptions{IncludeTextSeparator: !verbose}) if err != nil { t.Errorf("Failed to create parser and formatter: %v", err) continue