diff --git a/include/iri_ros_tools/module_action.h b/include/iri_ros_tools/module_action.h
index edc6a9af233e014c7dbf6fc640d3c6e31683d16c..182f780b2cf3d2ee60730329c3eb50a496c18524 100644
--- a/include/iri_ros_tools/module_action.h
+++ b/include/iri_ros_tools/module_action.h
@@ -217,26 +217,29 @@ class CModuleAction
     void action_done(const actionlib::SimpleClientGoalState& state,const ResultConstPtr& result)
     {
       this->action_access.enter();
-      if(state==actionlib::SimpleClientGoalState::ABORTED)
+      if(this->status==ACTION_RUNNING)
       {
-        ROS_ERROR_STREAM("CModuleAction::action_done: goal on server " << this->name << " aborted");
-        this->status=ACTION_ABORTED;
-      }
-      if(state==actionlib::SimpleClientGoalState::REJECTED)
-      {
-        ROS_ERROR_STREAM("CModuleAction::action_done: goal on server " << this->name << " rejected");
-        this->status=ACTION_REJECTED;
-      }
-      else if(state==actionlib::SimpleClientGoalState::PREEMPTED)
-      {
-        ROS_WARN_STREAM("CModuleAction::action_done: goal on server " << this->name << " preempted");
-        this->status=ACTION_PREEMPTED;
+        if(state==actionlib::SimpleClientGoalState::ABORTED)
+        {
+          ROS_ERROR_STREAM("CModuleAction::action_done: goal on server " << this->name << " aborted");
+          this->status=ACTION_ABORTED;
+        }
+        if(state==actionlib::SimpleClientGoalState::REJECTED)
+        {
+          ROS_ERROR_STREAM("CModuleAction::action_done: goal on server " << this->name << " rejected");
+          this->status=ACTION_REJECTED;
+        }
+        else if(state==actionlib::SimpleClientGoalState::PREEMPTED)
+        {
+          ROS_WARN_STREAM("CModuleAction::action_done: goal on server " << this->name << " preempted");
+          this->status=ACTION_PREEMPTED;
+        }
+        else if(state==actionlib::SimpleClientGoalState::SUCCEEDED)
+        {
+          ROS_INFO_STREAM("CModuleAction::action_done: goal on server " << this->name << " successfull");
+          this->status=ACTION_SUCCESS;
+        } 
       }
-      else if(state==actionlib::SimpleClientGoalState::SUCCEEDED)
-      {
-        ROS_INFO_STREAM("CModuleAction::action_done: goal on server " << this->name << " successfull");
-        this->status=ACTION_SUCCESS;
-      } 
       this->action_result_msg=*result;
       this->action_feedback_msg=Feedback();
       this->action_timeout.stop();