diff --git a/sflphone-common/src/audio/recordable.cpp b/sflphone-common/src/audio/recordable.cpp
index 79740fb7774c2e322ee5bbe0a5ba32db67c72de6..8371bf7ec8b52a82763e3b4ea90a51944eafd48b 100644
--- a/sflphone-common/src/audio/recordable.cpp
+++ b/sflphone-common/src/audio/recordable.cpp
@@ -30,7 +30,7 @@
 #include "recordable.h"
 #include "manager.h"
 
-Recordable::Recordable() : recorder(&recAudio)
+Recordable::Recordable() : recorder(&recAudio, Manager::instance().getMainBuffer())
 {
 
     FILE_TYPE fileType = FILE_WAV;
diff --git a/sflphone-common/src/call.cpp b/sflphone-common/src/call.cpp
index 65195f5f50c5230641298ea18dc79d59ffccec0b..0185cf681741319de89ff2ca4ee89aa33c8f9867 100644
--- a/sflphone-common/src/call.cpp
+++ b/sflphone-common/src/call.cpp
@@ -194,7 +194,7 @@ Call::setRecording()
     if(!recordStatus)
       return false;
 
-    MainBuffer *mbuffer = &(Manager::instance()._mainBuffer);
+    MainBuffer *mbuffer = Manager::instance().getMainBuffer();
 
     CallID process_id = Recordable::recorder.getRecorderID();
 
diff --git a/sflphone-common/src/conference.cpp b/sflphone-common/src/conference.cpp
index 17ee9a39b50cf1334f780e1c33c63a8694e795b4..b32629acb63eeef8ef6e7be3601f7e8119cf4a96 100644
--- a/sflphone-common/src/conference.cpp
+++ b/sflphone-common/src/conference.cpp
@@ -167,7 +167,7 @@ bool Conference::setRecording() {
   if(!recordStatus)
     return false;
 
-  MainBuffer *mbuffer = &(Manager::instance()._mainBuffer);
+  MainBuffer *mbuffer = Manager::instance().getMainBuffer();
 
   ParticipantSet::iterator iter = _participants.begin();
 
diff --git a/sflphone-common/src/managerimpl.h b/sflphone-common/src/managerimpl.h
index 700bb1721d5a906a7df5d8112f9ece9fe251728d..fc457c767d62130242f5665b3b4e573ddd3c8ebe 100644
--- a/sflphone-common/src/managerimpl.h
+++ b/sflphone-common/src/managerimpl.h
@@ -1240,7 +1240,6 @@ class ManagerImpl {
     void unloadAccountMap();
 
 
- public:
     /**
      * Instance of the MainBuffer for the whole application
      *
@@ -1251,6 +1250,14 @@ class ManagerImpl {
      MainBuffer _mainBuffer;
 
 
+ public:
+
+     /**
+      * Return a pointer to the  instance of the mainbuffer
+      */
+     MainBuffer *getMainBuffer(void) { return &_mainBuffer; }
+
+
     /**
      * Tell if there is a current call processed
      * @return bool True if there is a current call