Browse Source

Improved non-public reply check.

default 1 year ago
parent
commit
44d126e0f9
1 changed files with 4 additions and 2 deletions
  1. 4 2
      html.c

+ 4 - 2
html.c

@@ -2054,11 +2054,13 @@ xs_str *html_timeline(snac *user, const xs_list *list, int read_only,
         if (user != NULL && !is_msg_public(msg)) {
             char *irt = xs_dict_get(msg, "inReplyTo");
 
+            /* is it a reply to something not in the storage? */
             if (!xs_is_null(irt) && !object_here(irt)) {
                 /* is it for me? */
-                xs_list *to = xs_dict_get(msg, "to");
+                xs_list *to = xs_dict_get_def(msg, "to", xs_stock(XSTYPE_LIST));
+                xs_list *cc = xs_dict_get_def(msg, "cc", xs_stock(XSTYPE_LIST));
 
-                if (xs_type(to) == XSTYPE_LIST && xs_list_in(to, user->actor) == -1) {
+                if (xs_list_in(to, user->actor) == -1 && xs_list_in(cc, user->actor) == -1) {
                     snac_debug(user, 1, xs_fmt("skipping non-public reply to an unknown post %s", v));
                     continue;
                 }