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

Commit b68106cf authored by Tobias Thierer's avatar Tobias Thierer Committed by Gerrit Code Review
Browse files

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

parents 554284ed c5e249b9
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -696,7 +696,7 @@ public final class DropBoxManagerService extends IDropBoxManagerService.Stub {
     * 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,
@@ -728,7 +728,12 @@ public final class DropBoxManagerService extends IDropBoxManagerService.Stub {
            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;