diff --git a/sflphone-client-gnome/src/actions.c b/sflphone-client-gnome/src/actions.c
index 598a91f7c72e4d52ac18bc626a44fe9109a49553..b7b1663ecb7316ea5530261678ceef8cbe0cb238 100644
--- a/sflphone-client-gnome/src/actions.c
+++ b/sflphone-client-gnome/src/actions.c
@@ -330,6 +330,8 @@ void sflphone_get_ip2ip_properties (GHashTable **properties)
 sflphone_hang_up()
 {
     callable_obj_t * selectedCall = calltab_get_selected_call(current_calls);
+    conference_obj_t * selectedConf = calltab_get_selected_conf(active_calltree);
+
     if(selectedCall)
     {
         switch(selectedCall->_state)
@@ -373,6 +375,10 @@ sflphone_hang_up()
                 break;
         }
     }
+    else if(selectedConf) {
+        dbus_hang_up_conference(selectedConf);
+    }
+
     calltree_update_call(history, selectedCall, NULL);
 }
 
diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 963a9c4579f9242ede7939a35cbec805fecf449c..82ccda733b0cb10ca086f8d15240a7501825d2c8 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -3143,6 +3143,8 @@ void ManagerImpl::switchAudioManager (void)
 
     framesize = getConfigInt (AUDIO , ALSA_FRAME_SIZE);
 
+    _debug("samplerate: %i, framesize %i\n", samplerate, framesize);
+
     alsaPlugin = getConfigString (AUDIO , ALSA_PLUGIN);
 
     numCardIn  = getConfigInt (AUDIO , ALSA_CARD_ID_IN);
@@ -3985,7 +3987,7 @@ void ManagerImpl::setAccountDetails (const std::string& accountID, const std::ma
         acc->loadConfig();
 
         if (acc->isEnabled()) {
-            acc->unregisterVoIPLink();
+	    // acc->unregisterVoIPLink(); // do not need to send an unregister
             acc->registerVoIPLink();
         } else {
             acc->unregisterVoIPLink();