about summary refs log tree commit diff
path: root/app/javascript
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2019-08-01 15:18:38 +0200
committerThibG <thib@sitedethib.com>2019-08-04 22:25:56 +0200
commit6600da0f7b48d3afb18f0df8b8ff6962bc7c71c6 (patch)
tree1651feceabb151941a845714958eed0dad866b8b /app/javascript
parentdf866a464d43ad718602a18b86c57b716f7bcf27 (diff)
Handle Mastodon-generated links for targets starting with “www.” properly
Diffstat (limited to 'app/javascript')
-rw-r--r--app/javascript/flavours/glitch/components/status_content.js4
1 files changed, 2 insertions, 2 deletions
diff --git a/app/javascript/flavours/glitch/components/status_content.js b/app/javascript/flavours/glitch/components/status_content.js
index b129e9a8b..fba30d6eb 100644
--- a/app/javascript/flavours/glitch/components/status_content.js
+++ b/app/javascript/flavours/glitch/components/status_content.js
@@ -54,7 +54,7 @@ const isLinkMisleading = (link, checkUrlLike = true) => {
   const targetURL = new URL(link.href);
 
   // The following may not work with international domain names
-  if (linkText === targetURL.origin || linkText === targetURL.host || 'www.' + linkText === targetURL.host || linkText.startsWith(targetURL.origin + '/') || linkText.startsWith(targetURL.host + '/')) {
+  if (linkText === targetURL.origin || linkText === targetURL.host || 'www.' + linkText === targetURL.host || linkText.startsWith(targetURL.origin + '/') || linkText.startsWith(targetURL.host + '/') || ('www.' + linkText).startsWith(targetURL.host + '/')) {
     return false;
   }
 
@@ -62,7 +62,7 @@ const isLinkMisleading = (link, checkUrlLike = true) => {
   const hostname = decodeIDNA(targetURL.hostname);
   const host = targetURL.host.replace(targetURL.hostname, hostname);
   const origin = targetURL.origin.replace(targetURL.host, host);
-  if (linkText === origin || linkText === host || linkText.startsWith(origin + '/') || linkText.startsWith(host + '/')) {
+  if (linkText === origin || linkText === host || 'www.' + linkText === host || linkText.startsWith(origin + '/') || linkText.startsWith(host + '/') || ('www.' + linkText).startsWith(host + '/')) {
     return false;
   }