Merge branch '3.2.x'

* 3.2.x:
  [ticket/14527] Decode automatically generated postlink without prefix
  [ticket/14527] Add tests for reverted improper fix
  [ticket/14527] Retrieve link URL from href and not link text
This commit is contained in:
Tristan Darricau 2016-03-25 11:35:47 +01:00
commit 5d118581ce
3 changed files with 20 additions and 2 deletions

View file

@ -2746,7 +2746,8 @@ function get_preg_expression($mode)
return array(
'#<!\-\- e \-\-><a href="mailto:(.*?)">.*?</a><!\-\- e \-\->#',
'#<!\-\- l \-\-><a (?:class="[\w-]+" )?href="(.*?)(?:(&amp;|\?)sid=[0-9a-f]{32})?">.*?</a><!\-\- l \-\->#',
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">(.*?)</a><!\-\- \1 \-\->#',
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="http://(.*?)">\2</a><!\-\- \1 \-\->#',
'#<!\-\- ([mw]) \-\-><a (?:class="[\w-]+" )?href="(.*?)">.*?</a><!\-\- \1 \-\->#',
'#<!\-\- s(.*?) \-\-><img src="\{SMILIES_PATH\}\/.*? \/><!\-\- s\1 \-\->#',
'#<!\-\- .*? \-\->#s',
'#<.*?>#s',

View file

@ -469,7 +469,7 @@ function decode_message(&$message, $bbcode_uid = '')
$message = str_replace($match, $replace, $message);
$match = get_preg_expression('bbcode_htm');
$replace = array('\1', '\1', '\3', '\1', '', '');
$replace = array('\1', '\1', '\2', '\2', '\1', '', '');
$message = preg_replace($match, $replace, $message);
}

View file

@ -16,6 +16,15 @@ require_once dirname(__FILE__) . '/../../phpBB/includes/functions_content.php';
class phpbb_text_processing_decode_message_test extends phpbb_test_case
{
public function setUp()
{
parent::setUp();
global $phpbb_dispatcher;
$phpbb_dispatcher = new phpbb_mock_event_dispatcher();
}
/**
* @dataProvider get_legacy_tests
*/
@ -46,6 +55,14 @@ class phpbb_text_processing_decode_message_test extends phpbb_test_case
'<!-- m --><a class="postlink" href="http://www.phpbb.com">http://www.phpbb.com</a><!-- m -->',
'http://www.phpbb.com'
),
array(
'<!-- m --><a class="postlink" href="http://www.phpbb.com">this is just text</a><!-- m -->',
'http://www.phpbb.com'
),
array(
'<!-- m --><a class="postlink" href="http://www.phpbb.com/some/more/link/that/is/shortened">http://www.phpbb.com/some/ ... /shortened</a><!-- m -->',
'http://www.phpbb.com/some/more/link/that/is/shortened'
),
/**
* Fails as per PHPBB3-8420
* @link http://tracker.phpbb.com/browse/PHPBB3-8420