Fix notification issue
authorJoohyun Kim <joohyune.kim@samsung.com>
Fri, 7 Jun 2013 05:45:16 +0000 (14:45 +0900)
committerGerrit Code Review <gerrit2@kim11>
Fri, 7 Jun 2013 06:07:55 +0000 (15:07 +0900)
Change-Id: Ia4161fa2e43f4ecfe1d43bed06d8da1c8200bb77
Signed-off-by: Joohyun Kim <joohyune.kim@samsung.com>
src/setting/FSys_SettingSoundProvider.cpp

index 4e09290..4e63492 100644 (file)
@@ -379,28 +379,43 @@ _SettingSoundProvider::GetValue(const String& key, String& value)
 
                value.Clear();
                value.Append(pRingtone);
+               free(pRingtone);
                if(File::IsFileExist(value) == false)
                {
-                       value = L"/opt/share/settings/Ringtones/ringtone_sdk.mp3";
-                       system_settings_set_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, "/opt/share/settings/Ringtones/ringtone_sdk.mp3");
+                       if(File::IsFileExist(L"/opt/share/settings/Ringtones/ringtone_sdk.mp3") == true)
+                       {
+                               value = L"/opt/share/settings/Ringtones/ringtone_sdk.mp3";
+                               system_settings_set_value_string(SYSTEM_SETTINGS_KEY_INCOMING_CALL_RINGTONE, "/opt/share/settings/Ringtones/ringtone_sdk.mp3");
+                       }
+                       else
+                       {
+                               return E_SYSTEM;
+                       }
                }
-               free(pRingtone);
        }
        if(key == _SOUND_NOTIFICATION)
        {
                SysTryReturnResult(NID_SYS, HasKey(key) == true, E_UNSUPPORTED_OPERATION, "Current device does not support ringtone feature.");
                r = E_SUCCESS;
                char* pNotification = null;
-               pNotification = vconf_get_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR);
-               SysTryReturnResult(NID_SYS, pNotification != null, E_SYSTEM, "It is failed to get file path of notificaiton effect sound.");
+               errorCode = system_settings_get_value_string(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, &pNotification);
+               SysTryReturnResult(NID_SYS, errorCode == SYSTEM_SETTINGS_ERROR_NONE, E_SYSTEM, "It is failed to get ringtone");
                value.Clear();
                value.Append(pNotification);
+               free(pNotification);
+
                if(File::IsFileExist(value) == false)
                {
-                       value = L"/opt/share/settings/Alerts/General notification_sdk.wav";
-                       vconf_set_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, "/opt/share/settings/Alerts/General notification_sdk.wav");
+                       if(File::IsFileExist( L"/opt/share/settings/Alerts/General notification_sdk.wav") == true)
+                       {
+                               value =  L"/opt/share/settings/Alerts/General notification_sdk.wav";
+                               system_settings_set_value_string(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, "/opt/share/settings/Alerts/General notification_sdk.wav");
+                       }
+                       else
+                       {
+                               return E_SYSTEM;
+                       }
                }
-               free(pNotification);
        }
        else if(key == _SOUND_NOTIFICATION_REPEAT_PERIOD)
        {
@@ -467,7 +482,7 @@ _SettingSoundProvider::SetValue(const String& key, const String value)
 
                SysTryReturn(NID_SYS, pFilePath != null, E_SYSTEM, E_SYSTEM, "It is failed to convert type of filePath");
 
-               errorCode = vconf_set_str(VCONFKEY_SETAPPL_NOTI_MSG_RINGTONE_PATH_STR, pFilePath);
+               errorCode = system_settings_set_value_string(SYSTEM_SETTINGS_KEY_EMAIL_ALERT_RINGTONE, const_cast<char*>(pFilePath));
                SysTryReturn(NID_SYS, errorCode == 0, E_SYSTEM, E_SYSTEM, "It is failed to set ringtone");
 
                delete [] pFilePath;