summaryrefslogtreecommitdiffstats
path: root/src/com/android/providers/contacts/database
diff options
context:
space:
mode:
authorZheng Fu <zhengfu@google.com>2015-07-10 15:14:25 -0700
committerZheng Fu <zhengfu@google.com>2015-07-10 15:50:53 -0700
commitcc9ce6b1c8f9d7c4d8b4da96003ce74ccaa636cc (patch)
tree2ab50c1e2e79713c20535ff244d5520f24a56774 /src/com/android/providers/contacts/database
parent5ca831dc33dfa16821647e14e377c484df823c80 (diff)
downloadpackages_providers_ContactsProvider-cc9ce6b1c8f9d7c4d8b4da96003ce74ccaa636cc.zip
packages_providers_ContactsProvider-cc9ce6b1c8f9d7c4d8b4da96003ce74ccaa636cc.tar.gz
packages_providers_ContactsProvider-cc9ce6b1c8f9d7c4d8b4da96003ce74ccaa636cc.tar.bz2
Dealing with some edge cases with soft deleted contacts.
1. Exlude soft deleted contacts for aggregator algorithm upgrade. 2. Make sure to update the contacts.name_raw_contact_id column for soft deleted raw contact. Bug:22378846 Change-Id: I53a48ced645f9b00b708b4b9d88518a529834f89
Diffstat (limited to 'src/com/android/providers/contacts/database')
-rw-r--r--src/com/android/providers/contacts/database/ContactsTableUtil.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/com/android/providers/contacts/database/ContactsTableUtil.java b/src/com/android/providers/contacts/database/ContactsTableUtil.java
index dbc3d3e..bb29f90 100644
--- a/src/com/android/providers/contacts/database/ContactsTableUtil.java
+++ b/src/com/android/providers/contacts/database/ContactsTableUtil.java
@@ -118,7 +118,7 @@ public class ContactsTableUtil {
* Delete the aggregate contact if it has no constituent raw contacts other than the supplied
* one.
*/
- public static void deleteContactIfSingleton(SQLiteDatabase db, long rawContactId) {
+ public static int deleteContactIfSingleton(SQLiteDatabase db, long rawContactId) {
// This query will find a contact id if the contact has a raw contacts other than the one
// passed in.
final String sql = "select " + ContactsContract.RawContacts.CONTACT_ID + ", count(1)"
@@ -136,11 +136,12 @@ public class ContactsTableUtil {
if (numRawContacts == 1) {
// Only one raw contact, we can delete the parent.
- deleteContact(db, contactId);
+ return deleteContact(db, contactId);
}
}
} finally {
MoreCloseables.closeQuietly(cursor);
}
+ return 0;
}
}