diff --git a/source/RobotAPI/libraries/core/LinkedPose.cpp b/source/RobotAPI/libraries/core/LinkedPose.cpp
index a554f6dd14daa9bf0d1533df4061a30036453a6f..be2a408c4d91878a0aa55eeb8d89e4d38d6dbde5 100644
--- a/source/RobotAPI/libraries/core/LinkedPose.cpp
+++ b/source/RobotAPI/libraries/core/LinkedPose.cpp
@@ -48,6 +48,11 @@ namespace armarx {
         FramedPose(other)
     {
         this->referenceRobot = referenceRobot;
+        if(referenceRobot)
+        {
+            //ARMARX_WARNING_S << "Calling referenceRobot->ref() in cctor of LinkedPose";
+            referenceRobot->ref();
+        }
 
     }
 
@@ -56,7 +61,7 @@ namespace armarx {
         FramedPose(m, v, s, referenceRobot->getName())
     {
         referenceRobot->ref();
-        this->referenceRobot = referenceRobot;
+        this->referenceRobot = referenceRobot;        
     }
 
     LinkedPose::LinkedPose(const Eigen::Matrix4f& m, const std::string& s, const SharedRobotInterfacePrx& referenceRobot) :
@@ -189,6 +194,11 @@ namespace armarx {
         FramedVector3(source)
     {
         referenceRobot = source.referenceRobot;
+        if(referenceRobot)
+        {
+            //ARMARX_WARNING_S << "Calling referenceRobot->ref() in cctor of LinkedPose";
+            referenceRobot->ref();
+        }
     }
 
     LinkedVector3::LinkedVector3(const Eigen::Vector3f &v, const std::string &frame, const SharedRobotInterfacePrx &referenceRobot) :