diff --git a/daemon/src/history/historyitem.cpp b/daemon/src/history/historyitem.cpp
index 1015d25648c410cdaa1c9f32368d1a0e93e73422..cb10700f73b0ac060e779cb2afb5b69f7990ed65 100644
--- a/daemon/src/history/historyitem.cpp
+++ b/daemon/src/history/historyitem.cpp
@@ -36,7 +36,6 @@
 #include <manager.h>
 
 #define ITEM_SEPARATOR      "|"
-#define EMPTY_STRING        "empty"
 
 HistoryItem::HistoryItem (std::string timestamp_start, CallType call_type, std::string timestamp_stop, std::string name, std::string number, std::string id, std::string account_id, std::string recording, std::string confID, std::string timeAdded)
     :	_timestamp_start (timestamp_start),
@@ -55,57 +54,40 @@ HistoryItem::HistoryItem (std::string timestamp_start, CallType call_type, std::
 
 HistoryItem::HistoryItem (std::string serialized_form)
 {
-    size_t pos;
-    std::string tmp, type, name, number, start, stop, id, account, recordFile;
-    std::string confID, timeAdded;
     int indice = 0;
 
     while (serialized_form.find (ITEM_SEPARATOR, 0) != std::string::npos) {
-        pos = serialized_form.find (ITEM_SEPARATOR, 0);
-        tmp = serialized_form.substr (0, pos);
+        size_t pos = serialized_form.find (ITEM_SEPARATOR, 0);
+        std::string tmp = serialized_form.substr (0, pos);
         serialized_form.erase (0, pos + 1);
 
         switch (indice) {
-            case 0: // The call type
-                type = tmp;
-		_error("Unserialized type: %s", tmp.c_str());
-                break;
-            case 1: // The number field
-                number = tmp;
-		_error("Serialized number: %s", tmp.c_str());
-                break;
-            case 2: // The name field
-                name = tmp;
-		_error("Serialized name: %s", tmp.c_str());
-                break;
-            case 3: // The start timestamp
-		_error("Serialized time start: %s", tmp.c_str());
-                start = tmp;
-                break;
-	    case 4: // The end timestamp
-		_error("Serialized time stop: %s", tmp.c_str());
-		stop = tmp;
-		break;
-	    case 5: // The ID
-		_error("Serialized id: %s", tmp.c_str());
-		id = tmp;
-		break;
-            case 6: // The account ID
-		_error("Serialized account: %s", tmp.c_str());
-                account = tmp;
-                break;
-            case 7: // The recorded file name
-		_error("Serialized recordfile: %s", tmp.c_str());
-		recordFile = tmp;
-		break;
-            case 8: // The conference ID
-	        _error("Serialized conferenceID: %s", tmp.c_str());
-		confID = tmp;
-		break;
-	    case 9: // The time
-		_error("Serialized timeadded: %s", tmp.c_str());
-		timeAdded = tmp;
-		break;
+		case 0: // The call type
+		    _call_type = (CallType) atoi (tmp.c_str());
+			break;
+		case 1: // The number field
+			_number = tmp;
+			break;
+		case 2: // The name field
+			_name = tmp;
+			if (_name == "empty")
+				_name = "";
+			break;
+		case 3: // The start timestamp
+			_timestamp_start = tmp;
+			break;
+		case 6: // The account ID
+			_account_id = tmp;
+			break;
+		case 7: // The recorded file name
+			_recording_file = tmp;
+			break;
+		case 8: // The conference ID
+			_confID = tmp;
+			break;
+		case 9: // The time
+		    _timeAdded = tmp;
+			break;
 		default: // error
 			_error("Unserialized form %d not recognized\n", indice);
 			break;
@@ -114,21 +96,8 @@ HistoryItem::HistoryItem (std::string serialized_form)
         indice ++;
     }
 
-    _id = id;
-
-    _call_type = (CallType) atoi (type.c_str());
-
-    _number = number;
-    (name == EMPTY_STRING) ? _name = "" : _name = name;
-    _timestamp_start = start;
-    _timestamp_stop = stop;
-    // (serialized_form == EMPTY_STRING) ? _account_id = "" : _account_id = tmp;
-    _account_id = account;
-
-    _confID = confID;
-    _timeAdded = timeAdded;
-
-    _recording_file = recordFile;
+    _id = "";
+    _timestamp_stop = "";
 }
 
 HistoryItem::~HistoryItem ()
@@ -140,17 +109,14 @@ bool HistoryItem::save (Conf::ConfigTree **history)
 {
     std::stringstream section;
     std::stringstream call_type;
-    std::string sectionstr;
-    bool res;
 
     // The section is : "[" + timestamp = "]"
     section << rand();
+    std::string sectionstr = section.str();
     call_type << _call_type;
 
-    sectionstr = section.str();
-
-    _error("-- Unserialized type: %s", call_type.str().c_str());
     /*
+    _error("-- Unserialized type: %s", call_type.str().c_str());
     _error("-- Unserialized time start: %s", _timestamp_start.c_str());
     _error("-- Unserialized time stop: %s", _timestamp_stop.c_str());
     _error("-- Unserialized number: %s", _number.c_str());
@@ -162,35 +128,36 @@ bool HistoryItem::save (Conf::ConfigTree **history)
     _error("-- Unserialized time added: %s", _timeAdded.c_str());
     */
 
-    res = ( (*history)->setConfigTreeItem (sectionstr, "type", call_type.str())
+    return (*history)->setConfigTreeItem (sectionstr, "type", call_type.str())
 	    && (*history)->setConfigTreeItem (sectionstr, "timestamp_start", _timestamp_start)
-            && (*history)->setConfigTreeItem (sectionstr, "timestamp_stop", _timestamp_stop)
-            && (*history)->setConfigTreeItem (sectionstr, "number", _number)
+        && (*history)->setConfigTreeItem (sectionstr, "timestamp_stop", _timestamp_stop)
+        && (*history)->setConfigTreeItem (sectionstr, "number", _number)
 	    && (*history)->setConfigTreeItem (sectionstr, "id", _id)
-            && (*history)->setConfigTreeItem (sectionstr, "accountid", _account_id)
-            && (*history)->setConfigTreeItem (sectionstr, "name", _name)
+        && (*history)->setConfigTreeItem (sectionstr, "accountid", _account_id)
+        && (*history)->setConfigTreeItem (sectionstr, "name", _name)
 	    && (*history)->setConfigTreeItem (sectionstr, "recordfile", _recording_file)
 	    && (*history)->setConfigTreeItem (sectionstr, "confid", _confID)
-	    && (*history)->setConfigTreeItem (sectionstr, "timeadded", _timeAdded));
-
-    return res;
+	    && (*history)->setConfigTreeItem (sectionstr, "timeadded", _timeAdded);
 }
 
 std::string HistoryItem::serialize (void)
 {
     std::stringstream res;
-    std::string separator = ITEM_SEPARATOR;
-    std::string name, accountID;
 
     // Replace empty string with a valid standard string value
-    (_name == "") ? name = EMPTY_STRING : name = _name;
+    std::string name(_name);
+    if (name == "")
+    	name = "empty";
+
     // For the account ID, check also if the accountID corresponds to an existing account
     // ie the account may have been removed
-    (_account_id == "" || non_valid_account (_account_id)) ? accountID = "empty" : accountID = _account_id;
+    std::string accountID(_account_id);
+    if (_account_id == "" || non_valid_account (_account_id))
+    	accountID = "empty";
 
     // Serialize it
-    res << _call_type << separator << _number << separator << name << separator << _timestamp_start << separator << _timestamp_stop 
-	<< separator << _id << separator << accountID << separator << _recording_file << separator << _confID << separator << _timeAdded;
+    res << _call_type << ITEM_SEPARATOR << _number << ITEM_SEPARATOR << name << ITEM_SEPARATOR << _timestamp_start << ITEM_SEPARATOR << _timestamp_stop
+	<< ITEM_SEPARATOR << _id << ITEM_SEPARATOR << accountID << ITEM_SEPARATOR << _recording_file << ITEM_SEPARATOR << _confID << ITEM_SEPARATOR << _timeAdded;
 
     return res.str();
 }
diff --git a/daemon/src/history/historymanager.cpp b/daemon/src/history/historymanager.cpp
index 94daa804133f481f11fb10470a3d31feac892187..5980fa43dbb69f2f9a699aed73086d1fa775fe64 100644
--- a/daemon/src/history/historymanager.cpp
+++ b/daemon/src/history/historymanager.cpp
@@ -243,22 +243,13 @@ std::vector<std::string> HistoryManager::get_history_serialized (void)
 {
     std::vector<std::string> serialized;
     HistoryItemMap::iterator iter;
-    HistoryItem *current;
-    std::string res;
 
     _debug("HistoryManager: Get history serialized");
 
-    iter = _history_items.begin ();
-
-    while (iter != _history_items.end()) {
-        current = *iter;
-
-        if (current) {
-            res = current->serialize ();
-            serialized.push_back(res);
-        }
-
-        iter ++;
+    for (iter = _history_items.begin (); iter != _history_items.end(); ++iter) {
+        HistoryItem *current = *iter;
+        if (current)
+            serialized.push_back(current->serialize ());
     }
 
     return serialized;