diff --git a/sflphone-client-gnome/src/callable_obj.c b/sflphone-client-gnome/src/callable_obj.c
index 267874fc0ab2cce59ea8359152d5194ca1e89b84..f5e4df49495cbc250085fc4aa1cd17ddd8cc7800 100644
--- a/sflphone-client-gnome/src/callable_obj.c
+++ b/sflphone-client-gnome/src/callable_obj.c
@@ -499,8 +499,7 @@ gchar* serialize_history_call_entry (callable_obj_t *entry)
                           account_id, separator,
 			  record_file, separator,
 			  confID, separator,
-			  time_added,
-                          NULL);
+			  time_added, NULL);
 
     return result;
 }
diff --git a/sflphone-client-gnome/src/conference_obj.c b/sflphone-client-gnome/src/conference_obj.c
index 015365fc4dd3def6c4b55c40906393415ea0f232..d9a9ce4658b6af369f530351bfac48e56ae58446 100644
--- a/sflphone-client-gnome/src/conference_obj.c
+++ b/sflphone-client-gnome/src/conference_obj.c
@@ -266,9 +266,10 @@ gchar *serialize_history_conference_entry(conference_obj_t *entry)
 			time_start, separator,
 			time_stop, separator,
 			confID, separator,
-			"", separator, // peer AccountID
-			entry->_recordfile ? entry->_recordfile : "",
-			NULL); 
+			"empty", separator, // peer AccountID
+			entry->_recordfile ? entry->_recordfile : "", separator,
+			"empty", separator,
+			"empty", NULL); 
   	
 
     return result;
@@ -291,14 +292,14 @@ void create_conference_history_entry_from_serialized(gchar *entry, conference_ob
     
     DEBUG("Conference: Create a conference from serialized form");
  
-    ptr = g_strsplit(entry, delim, 8);
-    while(ptr != NULL && token < 8) {
+    ptr = g_strsplit(entry, delim, 10);
+    while(ptr != NULL && token < 10) {
         switch(token) {
             case 0:
 		history_state = MISSED;
 		break;
 	    case 1:
-		participant = g_strdup(*ptr);
+		participant = *ptr;
 		break;
 	    case 2:
 		name = *ptr;
@@ -318,6 +319,8 @@ void create_conference_history_entry_from_serialized(gchar *entry, conference_ob
 	    case 7:
 	        recordfile = *ptr;
 		break;
+	    case 8:
+	    case 9: 
 	    default:
 	        break;
 	}
@@ -328,10 +331,11 @@ void create_conference_history_entry_from_serialized(gchar *entry, conference_ob
 
     // create a new empty conference
     create_new_conference(state, confID, conf);
-    
-    // process_conference_participant_from_serialized(participant, *conf);
-
-    g_free(participant);
+  
+    (*conf)->_time_start = convert_gchar_to_timestamp(time_start); 
+    (*conf)->_time_stop = convert_gchar_to_timestamp(time_stop);
+    (*conf)->_recordfile = g_strdup(recordfile);
+ 
 }
 
 static void process_conference_participant_from_serialized(gchar *participant, conference_obj_t *conf)
diff --git a/sflphone-common/src/audio/recordable.cpp b/sflphone-common/src/audio/recordable.cpp
index c1be5447d54960e4da27cbbd1041ec8c622abe93..5cc2e373c9cf4296d4c49b7596289f760c50d4e4 100644
--- a/sflphone-common/src/audio/recordable.cpp
+++ b/sflphone-common/src/audio/recordable.cpp
@@ -33,6 +33,8 @@
 Recordable::Recordable() : recorder (&recAudio, Manager::instance().getMainBuffer())
 {
 
+    _debug("-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Recordable Constructor -=-=-=-=-=-=-=-=-=--=-=-=-");
+
     FILE_TYPE fileType = FILE_WAV;
     SOUND_FORMAT soundFormat = INT16;
 
@@ -42,6 +44,8 @@ Recordable::Recordable() : recorder (&recAudio, Manager::instance().getMainBuffe
 
 Recordable::~Recordable()
 {
+    _debug("-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= Recordable Destructor -=-=-=-=-=-=-=-=-=-=-=-=-=-");
+
     if (recAudio.isOpenFile()) {
         recAudio.closeFile();
     }
diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 8347a6c7b66a2a947b4a1e84d25a1e7081c2b464..bdeff1c7997d4115b78c32f654bc4f585022aa10 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -914,6 +914,8 @@ void ManagerImpl::removeConference (const ConfID& conference_id)
     else {
         _error ("Manager: Error: Cannot remove conference: %s", conference_id.c_str());
     }
+
+    delete conf;
 }
 
 Conference*