Explorar el Código

In 'Follow', ensure the actor object to be followed is here.

Due to the routing change made for the shared inboxes, local users
are not in the data storage, so this fixes it.
default hace 2 años
padre
commit
3414ab48c6
Se han modificado 1 ficheros con 7 adiciones y 0 borrados
  1. 7 0
      activitypub.c

+ 7 - 0
activitypub.c

@@ -1624,6 +1624,13 @@ int process_input_message(snac *snac, xs_dict *msg, xs_dict *req)
 
 
     if (strcmp(type, "Follow") == 0) { /** **/
     if (strcmp(type, "Follow") == 0) { /** **/
         if (!follower_check(snac, actor)) {
         if (!follower_check(snac, actor)) {
+            /* ensure the actor object is here */
+            if (!object_here(actor)) {
+                xs *actor_obj = NULL;
+                actor_request(snac, actor, &actor_obj);
+                object_add(actor, actor_obj);
+            }
+
             xs *f_msg = xs_dup(msg);
             xs *f_msg = xs_dup(msg);
             xs *reply = msg_accept(snac, f_msg, actor);
             xs *reply = msg_accept(snac, f_msg, actor);