Initialize stream properly in handler_server. (#1260)
diff --git a/transport/handler_server.go b/transport/handler_server.go
index 93144fc..6164409 100644
--- a/transport/handler_server.go
+++ b/transport/handler_server.go
@@ -317,6 +317,7 @@
s := &Stream{
id: 0, // irrelevant
+ requestRead: func(int) {},
cancel: cancel,
buf: newRecvBuffer(),
st: ht,
@@ -332,7 +333,10 @@
ctx = metadata.NewIncomingContext(ctx, ht.headerMD)
ctx = peer.NewContext(ctx, pr)
s.ctx = newContextWithStream(ctx, s)
- s.trReader = &recvBufferReader{ctx: s.ctx, recv: s.buf}
+ s.trReader = &transportReader{
+ reader: &recvBufferReader{ctx: s.ctx, recv: s.buf},
+ windowHandler: func(int) {},
+ }
// readerDone is closed when the Body.Read-ing goroutine exits.
readerDone := make(chan struct{})