summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSantos Cordon <santoscordon@google.com>2015-07-06 12:37:09 -0700
committerSantos Cordon <santoscordon@google.com>2015-07-06 12:38:45 -0700
commit755cc64c7ff675cbc6ee930b2afc690eab8e35df (patch)
tree8cb44a8c86bc376d7989b29d11a8a299e4e2df7d
parent03f6a65e2fe3c348735a0366dfb02e4209386950 (diff)
downloadandroid_packages_providers_CallLogProvider-755cc64c7ff675cbc6ee930b2afc690eab8e35df.tar.gz
android_packages_providers_CallLogProvider-755cc64c7ff675cbc6ee930b2afc690eab8e35df.tar.bz2
android_packages_providers_CallLogProvider-755cc64c7ff675cbc6ee930b2afc690eab8e35df.zip
Stop checking OWNER user in calllog backup.
Only OWNER supports backup today so this check is unnecessary. It also happens to have been written backwards and was only running for non-owners. Also, calllog entries can have a null handle if manually entered through the call log APIs. Add code to manage null-value smoothly when restoring the call log from backup. Bug: 22299502 Change-Id: I047a0282888fec03f904fbbfe39ac49f3d93886d
-rw-r--r--src/com/android/providers/calllogbackup/CallLogBackupAgent.java15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/com/android/providers/calllogbackup/CallLogBackupAgent.java b/src/com/android/providers/calllogbackup/CallLogBackupAgent.java
index 24ab98e..a94c91c 100644
--- a/src/com/android/providers/calllogbackup/CallLogBackupAgent.java
+++ b/src/com/android/providers/calllogbackup/CallLogBackupAgent.java
@@ -114,10 +114,6 @@ public class CallLogBackupAgent extends BackupAgent {
public void onBackup(ParcelFileDescriptor oldStateDescriptor, BackupDataOutput data,
ParcelFileDescriptor newStateDescriptor) throws IOException {
- if (UserManager.get(this).getUserHandle() == UserHandle.USER_OWNER) {
- return;
- }
-
// Get the list of the previous calls IDs which were backed up.
DataInputStream dataInput = new DataInputStream(
new FileInputStream(oldStateDescriptor.getFileDescriptor()));
@@ -145,10 +141,6 @@ public class CallLogBackupAgent extends BackupAgent {
@Override
public void onRestore(BackupDataInput data, int appVersionCode, ParcelFileDescriptor newState)
throws IOException {
- if (UserManager.get(this).getUserHandle() == UserHandle.USER_OWNER) {
- return;
- }
-
if (isDebug()) {
Log.d(TAG, "Performing Restore");
}
@@ -227,8 +219,11 @@ public class CallLogBackupAgent extends BackupAgent {
private void writeCallToProvider(Call call) {
Long dataUsage = call.dataUsage == 0 ? null : call.dataUsage;
- PhoneAccountHandle handle = new PhoneAccountHandle(
- ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
+ PhoneAccountHandle handle = null;
+ if (call.accountComponentName != null && call.accountId != null) {
+ handle = new PhoneAccountHandle(
+ ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
+ }
Calls.addCall(null /* CallerInfo */, this, call.number, call.numberPresentation, call.type,
call.features, handle, call.date, (int) call.duration,
dataUsage, true /* addForAllUsers */);