Rockbox mail archiveSubject: Re: Need to wait for dircache if previous build was interrupted
Re: Need to wait for dircache if previous build was interrupted
From: Boris Gjenero via rockbox-dev <rockbox-dev_at_cool.haxx.se>
Date: Fri, 10 Mar 2017 01:20:45 -0500
On 09/03/2017 10:11 PM, Michael Sevakis wrote:
>> So how about adding the dirchache.size != 0 condition there to not update
>> last_size if size is 0? Like this:
> Hmmm... .size isn't going to be zero at that point if there's been even
> one entry added by the scanner.
Yet dircache.size was zero when I put a splashf() there and shut down
while the background dircache scan was going on. The change above also
fixes the problem of needing a foreground dircache build after shutting
I'm thinking clean_shutdown() -> system_flush() -> tree_flush() ->
dircache_suspend() -> dircache_suspend_internal() -> reset_cache() sets
it to zero.
If the scanning had finished, then build_volumes() would have finished
and set last_size already, and that would persist after the reset_cache().
Received on 2017-03-10