summaryrefslogtreecommitdiff
path: root/firmware/common
diff options
context:
space:
mode:
Diffstat (limited to 'firmware/common')
-rw-r--r--firmware/common/dircache.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/firmware/common/dircache.c b/firmware/common/dircache.c
index 42585e121b..e8f149cad0 100644
--- a/firmware/common/dircache.c
+++ b/firmware/common/dircache.c
@@ -1884,10 +1884,12 @@ static void build_volumes(void)
1884 dircache.reserve_used = reserve_used; 1884 dircache.reserve_used = reserve_used;
1885 1885
1886 if (DIRCACHE_STUFFED(reserve_used)) 1886 if (DIRCACHE_STUFFED(reserve_used))
1887 dircache.last_size = 0; /* reset */ 1887 dircache.last_size = 0; /* reset */
1888 else if (dircache.size > dircache.last_size || 1888 else if (dircache.size > dircache.last_size)
1889 dircache.last_size - dircache.size > DIRCACHE_RESERVE) 1889 dircache.last_size = dircache.size; /* grow */
1890 dircache.last_size = dircache.size; 1890 else if (!dircache_runinfo.suspended &&
1891 dircache.last_size - dircache.size > DIRCACHE_RESERVE)
1892 dircache.last_size = dircache.size; /* shrink if not suspended */
1891 1893
1892 logf("Done, %ld KiB used", dircache.size / 1024); 1894 logf("Done, %ld KiB used", dircache.size / 1024);
1893 1895