Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f5518776 authored by Adam Lesinski's avatar Adam Lesinski Committed by Android (Google) Code Review
Browse files

Merge "Fix issue where pruned UsageStats files would not be removed from index"

parents a4005662 3a0831bf
Loading
Loading
Loading
Loading
+17 −12
Original line number Diff line number Diff line
@@ -378,9 +378,8 @@ class UsageStatsDatabase {
                }
            }

            try {
                IntervalStats stats = new IntervalStats();
                ArrayList<T> results = new ArrayList<>();
            final IntervalStats stats = new IntervalStats();
            final ArrayList<T> results = new ArrayList<>();
            for (int i = startIndex; i <= endIndex; i++) {
                final AtomicFile f = intervalStats.valueAt(i);

@@ -388,16 +387,18 @@ class UsageStatsDatabase {
                    Slog.d(TAG, "Reading stat file " + f.getBaseFile().getAbsolutePath());
                }

                try {
                    UsageStatsXml.read(f, stats);
                    if (beginTime < stats.endTime) {
                        combiner.combine(stats, false, results);
                    }
                }
                return results;
                } catch (IOException e) {
                    Slog.e(TAG, "Failed to read usage stats file", e);
                return null;
                    // We continue so that we return results that are not
                    // corrupt.
                }
            }
            return results;
        }
    }

@@ -450,6 +451,10 @@ class UsageStatsDatabase {
            mCal.addDays(-7);
            pruneFilesOlderThan(mIntervalDirs[UsageStatsManager.INTERVAL_DAILY],
                    mCal.getTimeInMillis());

            // We must re-index our file list or we will be trying to read
            // deleted files.
            indexFilesLocked();
        }
    }