From c7b8228b049ce0e4cf4db8e04f0cca33b81b3f67 Mon Sep 17 00:00:00 2001
From: Alexandre Savard <alexandresavard@alexandresavard-desktop.(none)>
Date: Mon, 17 May 2010 16:34:51 -0400
Subject: [PATCH] [#1962] Add default ALSA ringtone device in config

---
 sflphone-common/src/managerimpl.cpp | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/sflphone-common/src/managerimpl.cpp b/sflphone-common/src/managerimpl.cpp
index 2a15b40bac..99ef0079b9 100644
--- a/sflphone-common/src/managerimpl.cpp
+++ b/sflphone-common/src/managerimpl.cpp
@@ -2101,6 +2101,8 @@ void ManagerImpl::initConfigFile (bool load_user_value, std::string alternate) {
 			ALSA_CARD_ID_IN, ALSA_DFT_CARD), AUDIO);
 	_config.addDefaultValue(std::pair<std::string, std::string>(
 			ALSA_CARD_ID_OUT, ALSA_DFT_CARD), AUDIO);
+	_config.addDefaultValue(std::pair<std::string, std::string>(
+			ALSA_CARD_ID_RING, ALSA_DFT_CARD), AUDIO);
 	_config.addDefaultValue(std::pair<std::string, std::string>(
 			AUDIO_SAMPLE_RATE, DFT_SAMPLE_RATE), AUDIO);
 	_config.addDefaultValue(std::pair<std::string, std::string>(
@@ -2786,6 +2788,8 @@ void ManagerImpl::selectAudioDriver (void) {
 
 	    if (!alsalayer->soundCardIndexExist(numCardRing, SFL_PCM_RINGTONE)) {
 	        _debug(" Card with index %i doesn't exist or cannot ringtone. Switch to 0.", numCardRing);
+		numCardRing = ALSA_DFT_CARD_ID;
+		setConfig(AUDIO, ALSA_CARD_ID_RING, ALSA_DFT_CARD_ID);
 	    }
 	}
 
@@ -2858,14 +2862,13 @@ void ManagerImpl::switchAudioManager (void) {
 			SFL_PCM_BOTH, alsaPlugin);
 
 	if (_audiodriver -> getErrorMessage() != -1)
-		notifyErrClient(_audiodriver -> getErrorMessage());
+	    notifyErrClient(_audiodriver -> getErrorMessage());
 
 	_debug ("Manager: Current device: %i ", type);
-
 	_debug ("Manager: Has current call: %i ", hasCurrentCall());
 
 	if (hasCurrentCall())
-		_audiodriver->startStream();
+	    _audiodriver->startStream();
 
 	// ost::MutexLock unlock (*getAudioLayerMutex());
 	getAudioLayerMutex()->leave();
-- 
GitLab