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

Commit ca7a43b5 authored by songjinshi's avatar songjinshi Committed by android-build-merger
Browse files

Merge "Fixes the system server crash issue caused by uncatched exception."

am: b68106cf

Change-Id: Ia28f7bdad020dbb3695934cae1f193037de41fcb
parents 52fdb475 b68106cf
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -736,7 +736,7 @@ public final class DropBoxManagerService extends SystemService {
     * Trims the files on disk to make sure they aren't using too much space.
     * @return the overall quota for storage (in bytes)
     */
    private synchronized long trimToFit() {
    private synchronized long trimToFit() throws IOException {
        // Expunge aged items (including tombstones marking deleted data).

        int ageSeconds = Settings.Global.getInt(mContentResolver,
@@ -768,7 +768,12 @@ public final class DropBoxManagerService extends SystemService {
            int quotaKb = Settings.Global.getInt(mContentResolver,
                    Settings.Global.DROPBOX_QUOTA_KB, DEFAULT_QUOTA_KB);

            mStatFs.restat(mDropBoxDir.getPath());
            String dirPath = mDropBoxDir.getPath();
            try {
                mStatFs.restat(dirPath);
            } catch (IllegalArgumentException e) {  // restat throws this on error
                throw new IOException("Can't restat: " + mDropBoxDir);
            }
            int available = mStatFs.getAvailableBlocks();
            int nonreserved = available - mStatFs.getBlockCount() * reservePercent / 100;
            int maximum = quotaKb * 1024 / mBlockSize;