From 5205d9cc433bc35aa66c207de9df15bff4289ab0 Mon Sep 17 00:00:00 2001 From: Carl Mastrangelo Date: Tue, 12 Jan 2016 12:24:40 -0800 Subject: [PATCH] Fix unsynchronized access in InProcessTransport --- core/src/main/java/io/grpc/inprocess/InProcessTransport.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/io/grpc/inprocess/InProcessTransport.java b/core/src/main/java/io/grpc/inprocess/InProcessTransport.java index 6de8684c5a..938cf2b016 100644 --- a/core/src/main/java/io/grpc/inprocess/InProcessTransport.java +++ b/core/src/main/java/io/grpc/inprocess/InProcessTransport.java @@ -120,10 +120,11 @@ class InProcessTransport implements ServerTransport, ClientTransport { public synchronized ClientStream newStream( final MethodDescriptor method, final Metadata headers) { if (shutdownStatus != null) { + final Status capturedStatus = shutdownStatus; return new NoopClientStream() { @Override public void start(ClientStreamListener listener) { - listener.closed(shutdownStatus, new Metadata()); + listener.closed(capturedStatus, new Metadata()); } }; }