diff --git a/media/java/android/media/RingtoneManager.java b/media/java/android/media/RingtoneManager.java
index 829e3c1180c8bf5251586e48ea80ae55c3907d5e..6786437127a5c85a30ce1382240bf91a36d21afc 100644
--- a/media/java/android/media/RingtoneManager.java
+++ b/media/java/android/media/RingtoneManager.java
@@ -52,6 +52,7 @@ import android.provider.MediaStore.MediaColumns;
 import android.provider.Settings;
 import android.provider.Settings.System;
 import android.telephony.SubscriptionManager;
+import android.text.TextUtils;
 import android.util.Log;
 
 import com.android.internal.database.SortCursor;
@@ -1287,14 +1288,20 @@ public class RingtoneManager {
             // Skip if we've already defined it at least once, so we don't
             // overwrite the user changing to null
             final String setting = getDefaultRingtoneSetting(type);
+            String defaultRingtone2 = Settings.System.getString(context.getContentResolver(), Settings.System.RINGTONE2);
             if (Settings.System.getInt(context.getContentResolver(), setting, 0) != 0) {
-                continue;
+                if (!TextUtils.isEmpty(defaultRingtone2)) {
+                    continue;
+                }
             }
 
             // Try finding the scanned ringtone
             Uri ringtoneUri = computeDefaultRingtoneUri(context, type);
             if (ringtoneUri != null) {
                 RingtoneManager.setActualDefaultRingtoneUri(context, type, ringtoneUri);
+                if (TextUtils.isEmpty(defaultRingtone2)) {
+                    RingtoneManager.setActualDefaultRingtoneUriBySlot(context, TYPE_RINGTONE, ringtoneUri, 1);
+                }
                 Settings.System.putInt(context.getContentResolver(), setting, 1);
             }
         }