summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/main.c b/src/main.c
index ca439c3e9..fbebc043e 100644
--- a/src/main.c
+++ b/src/main.c
@@ -102,6 +102,12 @@ static int started = 0;
extern void expire_all(void)
{
+ if (noexpire || readonly)
+ {
+ /* don't allow expiry here or bad things will happen. */
+ return;
+ }
+
waiting = -30;
send_event(EVENT_DB_EXPIRE, 1, EVENT_START);
waiting = -3;
@@ -613,8 +619,7 @@ int main(int ac, char **av, char **envp)
if (debug >= 2)
alog("debug: Top of main loop");
- if (!noexpire && !readonly
- && (save_data || t - last_expire >= ExpireTimeout)) {
+ if (save_data || t - last_expire >= ExpireTimeout) {
expire_all();
last_expire = t;
}