summaryrefslogtreecommitdiff
path: root/activitypub.c
diff options
context:
space:
mode:
Diffstat (limited to 'activitypub.c')
-rw-r--r--activitypub.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/activitypub.c b/activitypub.c
index 06d4117..f9e7077 100644
--- a/activitypub.c
+++ b/activitypub.c
@@ -143,7 +143,7 @@ int actor_request(snac *snac, const char *actor, xs_dict **data)
143} 143}
144 144
145 145
146void timeline_request_replies(snac *user, const xs_dict *msg); 146void timeline_request_replies(snac *user, const char *id);
147 147
148int timeline_request(snac *snac, char **id, xs_str **wrk) 148int timeline_request(snac *snac, char **id, xs_str **wrk)
149/* ensures that an entry and its ancestors are in the timeline */ 149/* ensures that an entry and its ancestors are in the timeline */
@@ -191,18 +191,22 @@ int timeline_request(snac *snac, char **id, xs_str **wrk)
191 } 191 }
192 } 192 }
193 193
194 if (object) 194 timeline_request_replies(snac, *id);
195 timeline_request_replies(snac, object);
196 } 195 }
197 196
198 return status; 197 return status;
199} 198}
200 199
201 200
202void timeline_request_replies(snac *user, const xs_dict *msg) 201void timeline_request_replies(snac *user, const char *id)
203/* requests all replies of a message */ 202/* requests all replies of a message */
204/* FIXME: experimental -- needs more testing */ 203/* FIXME: experimental -- needs more testing */
205{ 204{
205 xs *msg = NULL;
206
207 if (!valid_status(object_get(id, &msg)))
208 return;
209
206 /* does it have a replies collection? */ 210 /* does it have a replies collection? */
207 const xs_dict *replies = xs_dict_get(msg, "replies"); 211 const xs_dict *replies = xs_dict_get(msg, "replies");
208 212
@@ -247,7 +251,7 @@ void timeline_request_replies(snac *user, const xs_dict *msg)
247 } 251 }
248 } 252 }
249 else 253 else
250 snac_debug(user, 0, xs_fmt("reply collection get %s %d", next, status)); 254 snac_debug(user, 0, xs_fmt("replies request error %s %d", next, status));
251 } 255 }
252 } 256 }
253 } 257 }