aboutsummaryrefslogtreecommitdiff
path: root/data.c
diff options
context:
space:
mode:
Diffstat (limited to 'data.c')
-rw-r--r--data.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/data.c b/data.c
index 8bc35aa..82a1776 100644
--- a/data.c
+++ b/data.c
@@ -1270,12 +1270,22 @@ xs_list *pending_list(snac *user)
const char *v;
xs_list_foreach(l, v) {
- const char *actor = xs_dict_get(v, "actor");
+ FILE *f;
+ xs *msg = NULL;
- if (xs_type(actor) == XSTYPE_STRING) {
- xs *md5 = xs_md5_hex(actor, strlen(actor));
- r = xs_list_append(r, md5);
- }
+ if ((f = fopen(v, "r")) == NULL)
+ continue;
+
+ msg = xs_json_load(f);
+ fclose(f);
+
+ if (msg == NULL)
+ continue;
+
+ const char *actor = xs_dict_get(msg, "actor");
+
+ if (xs_type(actor) == XSTYPE_STRING)
+ r = xs_list_append(r, actor);
}
return r;