summaryrefslogtreecommitdiff
path: root/roundcubemail/program/include/rcube_string_replacer.php
diff options
context:
space:
mode:
authoralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-04-26 11:36:42 +0000
committeralec <alec@208e9e7b-5314-0410-a742-e7e81cd9613c>2011-04-26 11:36:42 +0000
commitab9e33b6ab8ddf8cd7fc3f534e2f48d8e9d1f235 (patch)
tree0f50009045f8011a64469a0214219d010d0d5feb /roundcubemail/program/include/rcube_string_replacer.php
parent23eb3efad3dc0a203c7b376adf6a8a8a95943c2e (diff)
- Fix handling of top-level domains with more than 5 chars or unicode chars (#1487883)
git-svn-id: https://svn.roundcube.net/trunk@4702 208e9e7b-5314-0410-a742-e7e81cd9613c
Diffstat (limited to 'roundcubemail/program/include/rcube_string_replacer.php')
-rw-r--r--roundcubemail/program/include/rcube_string_replacer.php3
1 files changed, 2 insertions, 1 deletions
diff --git a/roundcubemail/program/include/rcube_string_replacer.php b/roundcubemail/program/include/rcube_string_replacer.php
index 28e1300c7..3c09326b2 100644
--- a/roundcubemail/program/include/rcube_string_replacer.php
+++ b/roundcubemail/program/include/rcube_string_replacer.php
@@ -36,7 +36,8 @@ class rcube_string_replacer
function __construct()
{
// Simplified domain expression for UTF8 characters handling
- $utf_domain = '[^?&@"\'\\/()\s\r\t\n]+\\.[a-z]{2,5}';
+ // Support unicode/punycode in top-level domain part
+ $utf_domain = '[^?&@"\'\\/()\s\r\t\n]+\\.([^\\x00-\\x40\\x5b-\\x60\\x7b-\\x7f]{2,}|xn--[a-z0-9]{2,})';
$url1 = '.:;';
$url2 = 'a-z0-9%=#@+?&\\/_~\\[\\]-';