#include <sys/wait.h>
#include <string.h>
#include <syslog.h>
+#include <time.h>
#include "configuration.h"
#include "syscalls.h"
if(n < config->player.n) {
nnew += !!trackdb_notice(track, path);
++ntracks;
+ if(ntracks % 1000 == 0)
+ info("rescanning %s, %ld tracks so far", c->root, ntracks);
}
}
/* tidy up */
*/
}
+/** @brief Expire noticed.db */
+static void expire_noticed(void) {
+ time_t now;
+
+ time(&now);
+ trackdb_expire_noticed(now - config->noticed_history * 86400);
+}
+
int main(int argc, char **argv) {
int n;
struct sigaction sa;
openlog(progname, LOG_PID, LOG_DAEMON);
log_default = &log_syslog;
}
- if(config_read()) fatal(0, "cannot read configuration");
+ if(config_read(0)) fatal(0, "cannot read configuration");
xnice(config->nice_rescan);
sa.sa_handler = signal_handler;
sa.sa_flags = SA_RESTART;
do_all(rescan_collection);
/* Check that every track still exists */
recheck_collection(0);
+ /* Expire noticed.db */
+ expire_noticed();
}
else {
/* Rescan specified collections */