From f78594b59d14a3451feb1af0de90a22cfe2b5b1c Mon Sep 17 00:00:00 2001 From: Jim Wigginton Date: Mon, 26 Jan 2009 22:53:19 +0000 Subject: =?UTF-8?q?Fixed=20bug=20#40565=20=E2=80=93=20Missing=20end=20"=20?= =?UTF-8?q?in=20quote=20bb=20tag=20deletes=20text=20Authorised=20by:=20acy?= =?UTF-8?q?dburn?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9304 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/message_parser.php | 3 +++ 1 file changed, 3 insertions(+) (limited to 'phpBB/includes/message_parser.php') diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index 4e350bce99..b97a055fde 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -695,6 +695,7 @@ class bbcode_firstpass extends bbcode * [quote="[i]test[/i]"]test[/quote] (correct: parsed) * [quote="[quote]test[/quote]"]test[/quote] (correct: parsed - Username displayed as [quote]test[/quote]) * #20735 - [quote]test[/[/b]quote] test [/quote][/quote] test - (correct: quoted: "test[/[/b]quote] test" / non-quoted: "[/quote] test" - also failed if layout distorted) + * #40565 - [quote="a"]a[/quote][quote="a]a[/quote] (correct: first quote tag parsed, second quote tag unparsed) */ $in = str_replace("\r\n", "\n", str_replace('\"', '"', trim($in))); @@ -858,6 +859,8 @@ class bbcode_firstpass extends bbcode } while ($in); + $out .= $buffer; + if (sizeof($close_tags)) { $out .= '[' . implode('][', $close_tags) . ']'; -- cgit v1.2.1 From 2e50df9e1a140f322e091d74500e05b6545a54e1 Mon Sep 17 00:00:00 2001 From: Jim Wigginton Date: Thu, 26 Feb 2009 23:46:46 +0000 Subject: Fixed bug #'ers 41295, 41385, 41955, 41705 and 41985 Authorised by: acydburn git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9342 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/message_parser.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'phpBB/includes/message_parser.php') diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index b97a055fde..bbe7cb5fa8 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -706,7 +706,7 @@ class bbcode_firstpass extends bbcode } // To let the parser not catch tokens within quote_username quotes we encode them before we start this... - $in = preg_replace('#quote="(.*?)"\]#ie', "'quote="' . str_replace(array('[', ']'), array('[', ']'), '\$1') . '"]'", $in); + $in = preg_replace('#quote="(.*?)"\]#ie', "'quote="' . str_replace(array('[', ']', '\\\"'), array('[', ']', '\"'), '\$1') . '"]'", $in); $tok = ']'; $out = '['; -- cgit v1.2.1 From 21aeaab002118fd76abf6b352122dfb7cd55f06a Mon Sep 17 00:00:00 2001 From: Meik Sievertsen Date: Mon, 16 Mar 2009 14:35:14 +0000 Subject: fix bug #42785 git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9370 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/message_parser.php | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'phpBB/includes/message_parser.php') diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index bbe7cb5fa8..ed09cfa6bd 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -1105,13 +1105,6 @@ class parse_message extends bbcode_firstpass } } - // Check for "empty" message - if ($mode !== 'sig' && utf8_clean_string($this->message) === '') - { - $this->warn_msg[] = $user->lang['TOO_FEW_CHARS']; - return (!$update_this_message) ? $return_message : $this->warn_msg; - } - // Prepare BBcode (just prepares some tags for better parsing) if ($allow_bbcode && strpos($this->message, '[') !== false) { @@ -1154,6 +1147,14 @@ class parse_message extends bbcode_firstpass } } + // Check for "empty" message. We do not check here for maximum length, because bbcode, smilies, etc. can add to the length. + // The maximum length check happened before any parsings. + if ($mode !== 'sig' && utf8_clean_string($this->message) === '') + { + $this->warn_msg[] = $user->lang['TOO_FEW_CHARS']; + return (!$update_this_message) ? $return_message : $this->warn_msg; + } + // Check number of links if ($config['max_' . $mode . '_urls'] && $num_urls > $config['max_' . $mode . '_urls']) { -- cgit v1.2.1 From b9f426355c80c3cbeedfb149283f4eb31b63ef7b Mon Sep 17 00:00:00 2001 From: Jim Wigginton Date: Wed, 1 Apr 2009 22:37:50 +0000 Subject: Fixed bug # 42885 - "Select all" selects much too much in Opera Authorised by: acydburn git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9422 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/message_parser.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'phpBB/includes/message_parser.php') diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index ed09cfa6bd..2f72ad8fdc 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -453,7 +453,7 @@ class bbcode_firstpass extends bbcode break; default: - return '[code:' . $this->bbcode_uid . ']' . $this->bbcode_specialchars($code) . '[/code:' . $this->bbcode_uid . ']'; + return '[code:' . $this->bbcode_uid . ']' . $this->bbcode_specialchars(trim($code)) . '[/code:' . $this->bbcode_uid . ']'; break; } } -- cgit v1.2.1 From 1e908f078e17c8ae7bf5358da6d76aae4f51712a Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Tue, 7 Apr 2009 12:50:31 +0000 Subject: Revert r9422 while we come up with a better fix git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9425 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/message_parser.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'phpBB/includes/message_parser.php') diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index 2f72ad8fdc..ed09cfa6bd 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -453,7 +453,7 @@ class bbcode_firstpass extends bbcode break; default: - return '[code:' . $this->bbcode_uid . ']' . $this->bbcode_specialchars(trim($code)) . '[/code:' . $this->bbcode_uid . ']'; + return '[code:' . $this->bbcode_uid . ']' . $this->bbcode_specialchars($code) . '[/code:' . $this->bbcode_uid . ']'; break; } } -- cgit v1.2.1 From 60422b7b78c6c468c9f0553ebf49e16562c3f772 Mon Sep 17 00:00:00 2001 From: Meik Sievertsen Date: Fri, 17 Apr 2009 13:07:51 +0000 Subject: #40865 - no message parsing for messages evaluating to false git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9453 89ea8834-ac86-4346-8a33-228a782c2dd0 --- phpBB/includes/message_parser.php | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'phpBB/includes/message_parser.php') diff --git a/phpBB/includes/message_parser.php b/phpBB/includes/message_parser.php index ed09cfa6bd..ab6fc3f4f3 100644 --- a/phpBB/includes/message_parser.php +++ b/phpBB/includes/message_parser.php @@ -1052,11 +1052,7 @@ class parse_message extends bbcode_firstpass { // Init BBCode UID $this->bbcode_uid = substr(base_convert(unique_id(), 16, 36), 0, BBCODE_UID_LEN); - - if ($message) - { - $this->message = $message; - } + $this->message = $message; } /** -- cgit v1.2.1