From 130cdcf7d0d0389a0c7653d25397fb5f4ddf5877 Mon Sep 17 00:00:00 2001
From: alecpl <alec@alec.pl>
Date: Mon, 03 Oct 2011 14:04:14 -0400
Subject: [PATCH] - Small improvement for handling redundant cache queries (followup to r5303)
---
program/include/rcube_string_replacer.php | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/program/include/rcube_string_replacer.php b/program/include/rcube_string_replacer.php
index 28e1300..5d743bf 100644
--- a/program/include/rcube_string_replacer.php
+++ b/program/include/rcube_string_replacer.php
@@ -36,8 +36,9 @@
function __construct()
{
// Simplified domain expression for UTF8 characters handling
- $utf_domain = '[^?&@"\'\\/()\s\r\t\n]+\\.[a-z]{2,5}';
- $url1 = '.:;';
+ // Support unicode/punycode in top-level domain part
+ $utf_domain = '[^?&@"\'\\/()\s\r\t\n]+\\.([^\\x00-\\x2f\\x3b-\\x40\\x5b-\\x60\\x7b-\\x7f]{2,}|xn--[a-z0-9]{2,})';
+ $url1 = '.:;,';
$url2 = 'a-z0-9%=#@+?&\\/_~\\[\\]-';
$this->link_pattern = "/([\w]+:\/\/|\Wwww\.)($utf_domain([$url1]?[$url2]+)*)/i";
--
Gitblit v1.9.1