aboutsummaryrefslogtreecommitdiff
path: root/webfinger.c
diff options
context:
space:
mode:
Diffstat (limited to 'webfinger.c')
-rw-r--r--webfinger.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/webfinger.c b/webfinger.c
index bd7f946..037aefa 100644
--- a/webfinger.c
+++ b/webfinger.c
@@ -133,9 +133,11 @@ int webfinger_request_fake(const char *qs, xs_str **actor, xs_str **user)
if (xs_startswith(qs, "https:/") || xs_startswith(qs, "http:/")) {
xs *l = xs_split(qs, "/");
- /* i'll end up in hell for this */
- *user = xs_fmt("%s@%s", xs_list_get(l, 2), xs_list_get(l, -1));
- status = HTTP_STATUS_RESET_CONTENT;
+ if (xs_list_len(l) > 3) {
+ /* i'll end up in hell for this */
+ *user = xs_fmt("%s@%s", xs_list_get(l, -1), xs_list_get(l, 2));
+ status = HTTP_STATUS_RESET_CONTENT;
+ }
}
}