aboutsummaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
Diffstat (limited to 'data.c')
-rw-r--r--data.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/data.c b/data.c
index 7dd7d19..b6aa9cf 100644
--- a/data.c
+++ b/data.c
@@ -406,7 +406,7 @@ int index_del_md5(const char *fn, const char *md5)
fclose(f);
}
else
- status = 500;
+ status = 410;
pthread_mutex_unlock(&data_mutex);
@@ -917,6 +917,9 @@ int object_unadmire(const char *id, const char *actor, int like)
status = index_del(fn, actor);
+ if (valid_status(status))
+ index_gc(fn);
+
srv_debug(0,
xs_fmt("object_unadmire (%s) %s %s %d", like ? "Like" : "Announce", actor, fn, status));
@@ -2743,6 +2746,16 @@ void purge_server(void)
}
}
}
+
+ /* delete index backups */
+ xs *specb = xs_fmt("%s/" "*.bak", v);
+ xs *bakfs = xs_glob(specb, 0, 0);
+
+ p2 = bakfs;
+ while (xs_list_iter(&p2, &v2)) {
+ unlink(v2);
+ srv_debug(1, xs_fmt("purged %s", v2));
+ }
}
}