aboutsummaryrefslogtreecommitdiffstats
path: root/include/text.php
diff options
context:
space:
mode:
authorHarald Eilertsen <haraldei@anduin.net>2024-10-12 18:15:54 +0200
committerHarald Eilertsen <haraldei@anduin.net>2024-10-12 18:15:54 +0200
commit687cda367316edb9f84b3e425e76c9e9279e96be (patch)
treea6b87ff4461639b0ab0fd2919832f38ba2e2df70 /include/text.php
parentaee396421ad3bbfbabebb252c5b1d75fdd82ec78 (diff)
downloadvolse-hubzilla-687cda367316edb9f84b3e425e76c9e9279e96be.tar.gz
volse-hubzilla-687cda367316edb9f84b3e425e76c9e9279e96be.tar.bz2
volse-hubzilla-687cda367316edb9f84b3e425e76c9e9279e96be.zip
Fix regex to detect URLs in cleanup_bbcode.
This fixes the issue where the text after the URL would be included in the link if it was immediately followed by a newline. Example: https://example.com this is a test. Would become: #^[url=https://example.com_this]https://example.com_this[/url] is a test
Diffstat (limited to 'include/text.php')
-rw-r--r--include/text.php7
1 files changed, 2 insertions, 5 deletions
diff --git a/include/text.php b/include/text.php
index 137622b7d..e69ce7d10 100644
--- a/include/text.php
+++ b/include/text.php
@@ -3755,12 +3755,9 @@ function cleanup_bbcode($body) {
$body = preg_replace_callback('/\[img(.*?)\[\/(img)\]/ism','\red_escape_codeblock',$body);
$body = preg_replace_callback('/\[zmg(.*?)\[\/(zmg)\]/ism','\red_escape_codeblock',$body);
- $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\
-+\,\(\)]+)/ismu", '\nakedoembed', $body);
-
- $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\
-+\,\(\)]+)/ismu", '\red_zrl_callback', $body);
+ $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\+\,\(\)]+)/ismu", '\nakedoembed', $body);
+ $body = preg_replace_callback("/([^\]\='".'"'."\;\/\{]|^|\#\^)(https?\:\/\/[a-zA-Z0-9\pL\:\/\-\?\&\;\.\=\@\_\~\#\%\$\!\\+\,\(\)]+)/ismu", '\red_zrl_callback', $body);
$body = preg_replace_callback('/\[\$b64code(.*?)\[\/(code)\]/ism','\red_unescape_codeblock',$body);
$body = preg_replace_callback('/\[\$b64summary(.*?)\[\/(summary)\]/ism','\red_unescape_codeblock',$body);