snac2

Fork of https://codeberg.org/grunfink/snac2
git clone https://git.inz.fi/snac2
Log | Files | Refs | README | LICENSE

commit e97092cf0c35fb51c2900c8001d89daf32a07ba1
parent 1307b6203cd9e963514a3a2808f569f6d0e69a7e
Author: default <nobody@localhost>
Date:   Thu, 15 Jun 2023 04:11:39 +0200

Maintain a link to the author object in the following/ subdirectory.

Diffstat:
Mdata.c | 13++++++++++++-
Mxs_time.h | 2--
2 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/data.c b/data.c @@ -1169,6 +1169,13 @@ int following_add(snac *snac, const char *actor, const xs_dict *msg) fwrite(j, 1, strlen(j), f); fclose(f); + + /* get the filename of the actor object */ + xs *actor_fn = _object_fn(actor); + + /* increase its reference count */ + fn = xs_replace_i(fn, ".json", ""); + link(actor_fn, fn); } else ret = 500; @@ -1184,9 +1191,13 @@ int following_del(snac *snac, const char *actor) { xs *fn = _following_fn(snac, actor); + snac_debug(snac, 2, xs_fmt("following_del %s %s", actor, fn)); + unlink(fn); - snac_debug(snac, 2, xs_fmt("following_del %s %s", actor, fn)); + /* also delete the reference to the author */ + fn = xs_replace_i(fn, ".json", ""); + unlink(fn); return 200; } diff --git a/xs_time.h b/xs_time.h @@ -32,8 +32,6 @@ xs_str *xs_str_time(time_t t, const char *fmt, int local) strftime(tmp, sizeof(tmp), fmt, &tm); -// printf("%d %d\n", local, t - xs_parse_time(tmp, fmt, local)); - return xs_str_new(tmp); }