diff --git a/nav2_util/include/nav2_util/simple_action_server.hpp b/nav2_util/include/nav2_util/simple_action_server.hpp
index d66333f427f00bd85d1084b0b513c1b3f856dc3b..371f887eed747c73a06d1db809eb6f83b5c2bac5 100644
--- a/nav2_util/include/nav2_util/simple_action_server.hpp
+++ b/nav2_util/include/nav2_util/simple_action_server.hpp
@@ -190,6 +190,10 @@ public:
       stop_execution_ = true;
     }
 
+    if (!execution_future_.valid()) {
+      return;
+    }
+
     if (is_running()) {
       warn_msg("Requested to deactivate server but goal is still executing."
         " Should check if action server is running before deactivating.");