diff --git a/reactor-core/src/main/java/reactor/core/publisher/Operators.java b/reactor-core/src/main/java/reactor/core/publisher/Operators.java
index <HASH>..<HASH> 100644
--- a/reactor-core/src/main/java/reactor/core/publisher/Operators.java
+++ b/reactor-core/src/main/java/reactor/core/publisher/Operators.java
@@ -786,14 +786,12 @@ public abstract class Operators {
 	@SuppressWarnings("unchecked")
 	public static <T> CorePublisher<T> onLastAssembly(CorePublisher<T> source) {
 		Function<Publisher, Publisher> hook = Hooks.onLastOperatorHook;
-		final Publisher<T> publisher;
 		if (hook == null) {
-			publisher = source;
-		}
-		else {
-			publisher = Objects.requireNonNull(hook.apply(source),"LastOperator hook returned null");
+			return source;
 		}
 
+		Publisher<T> publisher = Objects.requireNonNull(hook.apply(source),"LastOperator hook returned null");
+
 		if (publisher instanceof CorePublisher) {
 			return (CorePublisher<T>) publisher;
 		}
Avoid `instanceof` check in `onLastAssembly` if the hook is null (#<I>)

Since if the hook is null we're not changing the publisher,

we can return it "as is" without any additional check and avoid the instanceof check.