summaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
authordefault <nobody@localhost>2022-10-31 11:56:20 +0100
committerdefault <nobody@localhost>2022-10-31 11:56:20 +0100
commit4272f58e3f1ebc4d0759589e703a0269fdbe0ce4 (patch)
tree7b2ea5f105fd819832fe015fbf7a38a556e86f61 /data.c
parent81d8923768f23396e299cdfd8e2e4f63c53ee9e3 (diff)
Always set the referrer if it's the user.
Diffstat (limited to 'data.c')
-rw-r--r--data.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/data.c b/data.c
index 32727a7..5e1be8e 100644
--- a/data.c
+++ b/data.c
@@ -600,8 +600,9 @@ void timeline_admire(snac *snac, char *id, char *admirer, int like)
if (xs_list_in(list, admirer) == -1)
list = xs_list_append(list, admirer);
- /* set the admirer as the referrer (if not already set) */
- if (!like && xs_is_null(xs_dict_get(meta, "referrer")))
+ /* set the admirer as the referrer (if not already set or it's us) */
+ if (!like && (xs_is_null(xs_dict_get(meta, "referrer")) ||
+ strcmp(admirer, snac->actor) == 0))
meta = xs_dict_set(meta, "referrer", admirer);
/* re-store */