diff --git a/transport/http2_client.go b/transport/http2_client.go index 11515b68..ede63cda 100644 --- a/transport/http2_client.go +++ b/transport/http2_client.go @@ -198,17 +198,15 @@ func (t *http2Client) NewStream(ctx context.Context, callHdr *CallHdr) (_ *Strea return nil, ContextErr(context.DeadlineExceeded) } } - var authData map[string]string + authData := make(map[string]string) for _, c := range t.authCreds { - authData, err = c.GetRequestMetadata(ctx) - select { - case <-ctx.Done(): - return nil, ContextErr(ctx.Err()) - default: - } + data, err := c.GetRequestMetadata(ctx) if err != nil { return nil, StreamErrorf(codes.InvalidArgument, "transport: %v", err) } + for k, v := range data { + authData[k] = v + } } if _, err := wait(ctx, t.shutdownChan, t.writableChan); err != nil { return nil, err