Merge "If PackageUsage information is missing, treat as first boot and compile everything"

This commit is contained in:
Brian Carlstrom
2014-05-09 17:29:05 +00:00
committed by Gerrit Code Review

View File

@@ -603,6 +603,12 @@ public class PackageManagerService extends IPackageManager.Stub {
private final AtomicLong mLastWritten = new AtomicLong(0);
private final AtomicBoolean mBackgroundWriteRunning = new AtomicBoolean(false);
private boolean mIsFirstBoot = false;
boolean isFirstBoot() {
return mIsFirstBoot;
}
void write(boolean force) {
if (force) {
write();
@@ -691,6 +697,7 @@ public class PackageManagerService extends IPackageManager.Stub {
pkg.mLastPackageUsageTimeInMills = timeInMillis;
}
} catch (FileNotFoundException expected) {
mIsFirstBoot = true;
} catch (IOException e) {
Log.w(TAG, "Failed to read package usage times", e);
} finally {
@@ -1691,7 +1698,7 @@ public class PackageManagerService extends IPackageManager.Stub {
@Override
public boolean isFirstBoot() {
return !mRestoredSettings;
return !mRestoredSettings || mPackageUsage.isFirstBoot();
}
@Override