diff --git a/include/hpp/manipulation/graph/graph.hh b/include/hpp/manipulation/graph/graph.hh
index 71d3c3875e9aaf7cca2ae2ff31602d44b801c10d..62eaed686f3de636dd5fd5c273dcf71485bda588 100644
--- a/include/hpp/manipulation/graph/graph.hh
+++ b/include/hpp/manipulation/graph/graph.hh
@@ -78,8 +78,8 @@ namespace hpp {
           void init (const GraphComponentWkPtr_t& weak)
           {
             wkPtr_ = weak;
-            components.push_back (wkPtr_);
             id_ = components.size();
+            components.push_back (wkPtr_);
           }
 
           GraphComponent() : id_(-1)