diff --git a/rcljava/src/main/java/org/ros2/rcljava/executors/BaseExecutor.java b/rcljava/src/main/java/org/ros2/rcljava/executors/BaseExecutor.java index 536e417b..2233a5d0 100644 --- a/rcljava/src/main/java/org/ros2/rcljava/executors/BaseExecutor.java +++ b/rcljava/src/main/java/org/ros2/rcljava/executors/BaseExecutor.java @@ -332,12 +332,12 @@ protected void spinSome() { AnyExecutable anyExecutable = getNextExecutable(); if (anyExecutable == null) { waitForWork(0); - do { - anyExecutable = getNextExecutable(); - if (anyExecutable != null) { - executeAnyExecutable(anyExecutable); - } - } while (anyExecutable != null); + anyExecutable = getNextExecutable(); + } + + while (anyExecutable != null) { + executeAnyExecutable(anyExecutable); + anyExecutable = getNextExecutable(); } }