diff --git a/src/ros_import.cpp b/src/ros_import.cpp
index 38e236ecad3aebc87198fc9fd0841ab79936baeb..c9c1ce27ebe006f048ebadcf4fa8def552e3290b 100644
--- a/src/ros_import.cpp
+++ b/src/ros_import.cpp
@@ -14,18 +14,21 @@ namespace dynamicgraph
 {
   DYNAMICGRAPH_FACTORY_ENTITY_PLUGIN(RosImport, "RosImport");
 
-  RosImport::RosImport (const std::string& n)
-    : dynamicgraph::Entity(n),
-      nh_ (),
-      bindedSignal_ ()
+  const char* rosInit()
   {
     int argc = 1;
     char* arg0 = strdup("ros_import");
     char* argv[] = {arg0, 0};
     ros::init(argc, argv, "ros_import");
     free (arg0);
+    return "dynamic_graph";
+  }
 
-    nh_ = ros::NodeHandle ("dynamic_graph");
+  RosImport::RosImport (const std::string& n)
+    : dynamicgraph::Entity(n),
+      nh_ (rosInit ()),
+      bindedSignal_ ()
+  {
   }
 
   RosImport::~RosImport ()