| 
					
				 | 
			
			
				@@ -157,12 +157,10 @@ static void proxy_connection_failed(grpc_exec_ctx* exec_ctx, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                     const char* prefix, grpc_error* error) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   const char* msg = grpc_error_string(error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   gpr_log(GPR_INFO, "%s: %s", prefix, msg); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   int ep_state = conn->ep_state; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   int new_ep_state = ep_state | failure_type; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   if (ep_state != new_ep_state) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     conn->ep_state = new_ep_state; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // Shutdown the endpoint (client and/or server) if both read and write 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // failures are observed after setting the failure_type. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     // To prevent calling endpoint shutdown multiple times, It is important to 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -175,14 +173,12 @@ static void proxy_connection_failed(grpc_exec_ctx* exec_ctx, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                                GRPC_ERROR_REF(error)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     if (((ep_state & CLIENT_EP_FAIL) != CLIENT_EP_FAIL) && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         ((new_ep_state & CLIENT_EP_FAIL) == CLIENT_EP_FAIL)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       grpc_endpoint_shutdown(exec_ctx, conn->client_endpoint, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                              GRPC_ERROR_REF(error)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   proxy_connection_unref(exec_ctx, conn, "conn_failed"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -491,7 +487,6 @@ static void on_accept(grpc_exec_ctx* exec_ctx, void* arg, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   conn->client_endpoint = endpoint; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   conn->proxy = proxy; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   gpr_ref_init(&conn->refcount, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-  conn->ep_state = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   conn->pollset_set = grpc_pollset_set_create(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   grpc_pollset_set_add_pollset(exec_ctx, conn->pollset_set, proxy->pollset); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   grpc_endpoint_add_to_pollset_set(exec_ctx, endpoint, conn->pollset_set); 
			 |