From 3670e7f9c8ea7c7ed6c47e4fcb0f5f1dbd7b7a93 Mon Sep 17 00:00:00 2001
From: Hypolite Petovan <hypolite@mrpetovan.com>
Date: Thu, 29 Aug 2019 21:12:46 -0400
Subject: [PATCH] Remove unevenly supported lookbehind from link preview
 regular expression

- Simplify link preview condition
---
 view/js/linkPreview.js | 24 +++++++++++-------------
 1 file changed, 11 insertions(+), 13 deletions(-)

diff --git a/view/js/linkPreview.js b/view/js/linkPreview.js
index 7644af7fee..c018563848 100644
--- a/view/js/linkPreview.js
+++ b/view/js/linkPreview.js
@@ -52,7 +52,7 @@
 			<div class="clear"></div>\
 			<hr class="previewseparator">';
 		var text;
-		var urlRegex = /(?<!=)(https?\:\/\/|\s)[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})(\/+[a-z0-9_.\:\;-]*)*(\?[\&\%\|\+a-z0-9_=,\.\:\;-]*)?([\&\%\|\+&a-z0-9_=,\:\;\.-]*)([\!\#\/\&\%\|\+a-z0-9_=,\:\;\.-]*)}*/i;
+		var urlRegex = /^(?:https?\:\/\/|\s)[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})(?:\/+[a-z0-9_.\:\;-]*)*(?:\?[\&\%\|\+a-z0-9_=,\.\:\;-]*)?(?:[\&\%\|\+&a-z0-9_=,\:\;\.-]*)(?:[\!\#\/\&\%\|\+a-z0-9_=,\:\;\.-]*)}*$/i;
 		var binurl;
 		var block = false;
 		var blockTitle = false;
@@ -133,20 +133,18 @@
 				return;
 			}
 
-			if (trim(text) !== "") {
-				if (block === false && urlRegex.test(text)) {
-					binurl = bin2hex(text);
-					block = true;
+			if (trim(text) !== "" && block === false && urlRegex.test(text)) {
+				binurl = bin2hex(text);
+				block = true;
 
-					isCrawling = true;
-					$('#profile-rotator').show();
+				isCrawling = true;
+				$('#profile-rotator').show();
 
-					if (binurl in cache) {
-						isCrawling = false;
-						processContentData(cache[binurl]);
-					} else {
-						getContentData(binurl, processContentData);
-					}
+				if (binurl in cache) {
+					isCrawling = false;
+					processContentData(cache[binurl]);
+				} else {
+					getContentData(binurl, processContentData);
 				}
 			}
 		};