From b23cc7465f823ee1199ad60cf36357873e5118e2 Mon Sep 17 00:00:00 2001 From: Mikael Nordfeldth Date: Sun, 21 Feb 2016 18:47:32 +0100 Subject: [PATCH] Keep a unique set of WebFingerResource aliases --- plugins/WebFinger/lib/webfingerresource.php | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/plugins/WebFinger/lib/webfingerresource.php b/plugins/WebFinger/lib/webfingerresource.php index 61b2cc09ad..90b818add1 100644 --- a/plugins/WebFinger/lib/webfingerresource.php +++ b/plugins/WebFinger/lib/webfingerresource.php @@ -35,19 +35,20 @@ abstract class WebFingerResource // Add the URI as an identity, this is _not_ necessarily an HTTP url $uri = $this->object->getUri(); - $aliases[] = $uri; + $aliases[$uri] = true; if (common_config('webfinger', 'http_alias') && strtolower(parse_url($uri, PHP_URL_SCHEME)) === 'https') { - $aliases[] = preg_replace('/^https:/', 'http:', $uri, 1); + $aliases[preg_replace('/^https:/', 'http:', $uri, 1)] = true; } try { - $aliases[] = $this->object->getUrl(); + $aliases[$this->object->getUrl()] = true; } catch (InvalidUrlException $e) { // getUrl failed because no valid URL could be returned, just ignore it } - return $aliases; + // return a unique set of aliases by extracting only the keys + return array_keys($aliases); } abstract public function updateXRD(XML_XRD $xrd); -- 2.39.5