diff options
author | default <nobody@localhost> | 2023-08-19 09:31:13 +0200 |
---|---|---|
committer | default <nobody@localhost> | 2023-08-19 09:31:13 +0200 |
commit | 5de1a9ce0cbdda0ded72a51660130327636eb699 (patch) | |
tree | 59265f2e9dc5fb8abb43e45a8a23ef3f5dfeaa4e | |
parent | 46cfc37f2bfe03baa4d6feadf7155483c8797459 (diff) |
Rewritten history_get() prototype to match static_get().
-rw-r--r-- | data.c | 13 | ||||
-rw-r--r-- | html.c | 13 | ||||
-rw-r--r-- | snac.h | 3 |
3 files changed, 14 insertions, 15 deletions
@@ -1681,18 +1681,23 @@ void history_add(snac *snac, const char *id, const char *content, int size) } -xs_str *history_get(snac *snac, const char *id) +int history_get(snac *snac, const char *id, xs_str **content, int *size, + const char *inm, xs_str **etag) { - xs_str *content = NULL; xs *fn = _history_fn(snac, id); FILE *f; + int status = 404; if (fn && (f = fopen(fn, "r")) != NULL) { - content = xs_readall(f); + *content = xs_readall(f); fclose(f); + + *size = strlen(*content); + + status = 200; } - return content; + return status; } @@ -1875,9 +1875,7 @@ int html_get_handler(const xs_dict *req, const char *q_path, if (cache && history_mtime(&snac, h) > timeline_mtime(&snac)) { snac_debug(&snac, 1, xs_fmt("serving cached local timeline")); - *body = history_get(&snac, h); - *b_size = strlen(*body); - status = 200; + status = history_get(&snac, h, body, b_size, NULL, NULL); } else { xs *list = timeline_list(&snac, "public", skip, show); @@ -1905,9 +1903,7 @@ int html_get_handler(const xs_dict *req, const char *q_path, if (cache && history_mtime(&snac, "timeline.html_") > timeline_mtime(&snac)) { snac_debug(&snac, 1, xs_fmt("serving cached timeline")); - *body = history_get(&snac, "timeline.html_"); - *b_size = strlen(*body); - status = 200; + status = history_get(&snac, "timeline.html_", body, b_size, NULL, NULL); } else { snac_debug(&snac, 1, xs_fmt("building timeline")); @@ -1996,10 +1992,7 @@ int html_get_handler(const xs_dict *req, const char *q_path, status = 404; } else - if ((*body = history_get(&snac, id)) != NULL) { - *b_size = strlen(*body); - status = 200; - } + status = history_get(&snac, id, body, b_size, NULL, NULL); } } else @@ -150,7 +150,8 @@ xs_str *static_get_meta(snac *snac, const char *id); double history_mtime(snac *snac, const char *id); void history_add(snac *snac, const char *id, const char *content, int size); -xs_str *history_get(snac *snac, const char *id); +int history_get(snac *snac, const char *id, xs_str **content, int *size, + const char *inm, xs_str **etag); int history_del(snac *snac, const char *id); xs_list *history_list(snac *snac); |