diff --git a/spring-web/src/main/java/org/springframework/http/server/reactive/WriteResultPublisher.java b/spring-web/src/main/java/org/springframework/http/server/reactive/WriteResultPublisher.java index ed9e0a030bf439159f900125c9f4fb7593ac9baf..cd9b59a7cdd42d90f6837fecf16c260478a53abd 100644 --- a/spring-web/src/main/java/org/springframework/http/server/reactive/WriteResultPublisher.java +++ b/spring-web/src/main/java/org/springframework/http/server/reactive/WriteResultPublisher.java @@ -116,9 +116,9 @@ class WriteResultPublisher implements Publisher { @Override void subscribe(WriteResultPublisher publisher, Subscriber subscriber) { Assert.notNull(subscriber, "Subscriber must not be null"); + publisher.subscriber = subscriber; if (publisher.changeState(this, SUBSCRIBED)) { Subscription subscription = new ResponseBodyWriteResultSubscription(publisher); - publisher.subscriber = subscriber; subscriber.onSubscribe(subscription); if (publisher.publisherCompleted) { publisher.publishComplete();