am 2177c0f9: am c8e1bf0d: am 34ea500b: Merge "Handle db upgrade for non-Sprout devices to match Sprout devices." into lmp-dev

* commit '2177c0f919b4212d4720411f406302a5600fba9b':
  Handle db upgrade for non-Sprout devices to match Sprout devices.
diff --git a/src/com/android/providers/contacts/ContactsDatabaseHelper.java b/src/com/android/providers/contacts/ContactsDatabaseHelper.java
index c8990ea..6a09010 100644
--- a/src/com/android/providers/contacts/ContactsDatabaseHelper.java
+++ b/src/com/android/providers/contacts/ContactsDatabaseHelper.java
@@ -117,7 +117,7 @@
      *   900-999 L
      * </pre>
      */
-    static final int DATABASE_VERSION = 908;
+    static final int DATABASE_VERSION = 909;
 
     public interface Tables {
         public static final String CONTACTS = "contacts";
@@ -1479,6 +1479,7 @@
                 Calls.FEATURES + " INTEGER NOT NULL DEFAULT 0," +
                 Calls.PHONE_ACCOUNT_COMPONENT_NAME + " TEXT," +
                 Calls.PHONE_ACCOUNT_ID + " TEXT," +
+                Calls.SUB_ID + " INTEGER DEFAULT -1," +
                 Calls.NEW + " INTEGER," +
                 Calls.CACHED_NAME + " TEXT," +
                 Calls.CACHED_NUMBER_TYPE + " INTEGER," +
@@ -2790,6 +2791,11 @@
             oldVersion = 908;
         }
 
+        if (oldVersion < 909) {
+            upgradeToVersion909(db);
+            oldVersion = 909;
+        }
+
         if (upgradeViewsAndTriggers) {
             createContactsViews(db);
             createGroupsView(db);
@@ -4192,6 +4198,17 @@
         db.execSQL("UPDATE raw_contacts SET pinned = 0 WHERE pinned = 2147483647;");
     }
 
+    private void upgradeToVersion909(SQLiteDatabase db) {
+        try {
+            db.execSQL("ALTER TABLE calls ADD sub_id INTEGER DEFAULT -1;");
+        } catch (SQLiteException e) {
+            // The column already exists--copy over data
+            db.execSQL("UPDATE calls SET subscription_component_name='com.android.phone/"
+                    + "com.android.services.telephony.TelephonyConnectionService';");
+            db.execSQL("UPDATE calls SET subscription_id=sub_id;");
+        }
+    }
+
     public String extractHandleFromEmailAddress(String email) {
         Rfc822Token[] tokens = Rfc822Tokenizer.tokenize(email);
         if (tokens.length == 0) {