change after the lock is dropped, and before the lock is regained by the
build process. The state will now be reloaded by the build process.
aggregate();
expire();
savestate();
aggregate();
expire();
savestate();
error("rename $newfile: $!", $cleanup);
} #}}}
error("rename $newfile: $!", $cleanup);
} #}}}
+sub clearstate () { #{{{
+ %feeds=();
+ %guids=();
+ $state_loaded=0;
+} #}}}
+
sub expire () { #{{{
foreach my $feed (values %feeds) {
next unless $feed->{expireage} || $feed->{expirecount};
sub expire () { #{{{
foreach my $feed (values %feeds) {
next unless $feed->{expireage} || $feed->{expirecount};