diff --git a/daemon/src/config/config.cpp b/daemon/src/config/config.cpp
index 32d56f9481e0f132afc80c1e805ca8653ab76323..6268a51bf7c96230f989ab0fda289a5ef14c84fb 100644
--- a/daemon/src/config/config.cpp
+++ b/daemon/src/config/config.cpp
@@ -102,7 +102,7 @@ ConfigTree::getSections() const
  * If the section doesn't exists, create it
  */
 void
-ConfigTree::addConfigTreeItem(const std::string& section, const ConfigTreeItem item)
+ConfigTree::addConfigTreeItem(const std::string& section, const ConfigTreeItem &item)
 {
     // if we doesn't find the item, create it
     SectionMap::iterator iter = sections_.find(section);
diff --git a/daemon/src/config/config.h b/daemon/src/config/config.h
index 6c1643aa19886b5596bf05098a6a58a951f62871..183e608a50f45dbcb64fe610d88230c8b3e2da43 100644
--- a/daemon/src/config/config.h
+++ b/daemon/src/config/config.h
@@ -106,7 +106,7 @@ class ConfigTree {
          */
         std::list<std::string> getSections() const;
 
-        void addConfigTreeItem(const std::string& section, const ConfigTreeItem item);
+        void addConfigTreeItem(const std::string& section, const ConfigTreeItem &item);
         /**
          * Set a configuration value.
          *