diff options
Diffstat (limited to 'firmware')
-rw-r--r-- | firmware/common/dircache.c | 10 |
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 | ||