aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--phpBB/phpbb/textformatter/s9e/factory.php3
-rw-r--r--tests/text_processing/tickets_data/PHPBB3-15348.html1
-rw-r--r--tests/text_processing/tickets_data/PHPBB3-15348.txt1
-rw-r--r--tests/text_processing/tickets_data/PHPBB3-15348.xml33
4 files changed, 38 insertions, 0 deletions
diff --git a/phpBB/phpbb/textformatter/s9e/factory.php b/phpBB/phpbb/textformatter/s9e/factory.php
index 7719ce5afa..3f2e0ab8cb 100644
--- a/phpBB/phpbb/textformatter/s9e/factory.php
+++ b/phpBB/phpbb/textformatter/s9e/factory.php
@@ -323,6 +323,9 @@ class factory implements \phpbb\textformatter\cache_interface
// Only parse emoticons at the beginning of the text or if they're preceded by any
// one of: a new line, a space, a dot, or a right square bracket
$configurator->Emoticons->notAfter = '[^\\n .\\]]';
+
+ // Ignore emoticons that are immediately followed by a "word" character
+ $configurator->Emoticons->notBefore = '\\w';
}
// Load the censored words
diff --git a/tests/text_processing/tickets_data/PHPBB3-15348.html b/tests/text_processing/tickets_data/PHPBB3-15348.html
new file mode 100644
index 0000000000..e65925ec28
--- /dev/null
+++ b/tests/text_processing/tickets_data/PHPBB3-15348.html
@@ -0,0 +1 @@
+<img class="smilies" src="phpBB/images/smilies/icon_e_surprised.gif" width="15" height="17" alt=":o" title="First half of :ok:"> <img class="smilies" src="phpBB/images/smilies/icon_lol.gif" width="15" height="17" alt="k:" title="Second half of :ok:"> <img alt=":ok:" class="emoji smilies" draggable="false" src="//cdn.jsdelivr.net/emojione/assets/svg/1f197.svg"> \ No newline at end of file
diff --git a/tests/text_processing/tickets_data/PHPBB3-15348.txt b/tests/text_processing/tickets_data/PHPBB3-15348.txt
new file mode 100644
index 0000000000..d6b971702c
--- /dev/null
+++ b/tests/text_processing/tickets_data/PHPBB3-15348.txt
@@ -0,0 +1 @@
+:o k: :ok: \ No newline at end of file
diff --git a/tests/text_processing/tickets_data/PHPBB3-15348.xml b/tests/text_processing/tickets_data/PHPBB3-15348.xml
new file mode 100644
index 0000000000..0c88c8824f
--- /dev/null
+++ b/tests/text_processing/tickets_data/PHPBB3-15348.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<dataset>
+ <table name="phpbb_smilies">
+ <column>smiley_id</column>
+ <column>code</column>
+ <column>emotion</column>
+ <column>smiley_url</column>
+ <column>smiley_width</column>
+ <column>smiley_height</column>
+ <column>smiley_order</column>
+ <column>display_on_posting</column>
+ <row>
+ <value>13</value>
+ <value>:o</value>
+ <value>First half of :ok:</value>
+ <value>icon_e_surprised.gif</value>
+ <value>15</value>
+ <value>17</value>
+ <value>14</value>
+ <value>1</value>
+ </row>
+ <row>
+ <value>99</value>
+ <value>k:</value>
+ <value>Second half of :ok:</value>
+ <value>icon_lol.gif</value>
+ <value>15</value>
+ <value>17</value>
+ <value>22</value>
+ <value>1</value>
+ </row>
+ </table>
+</dataset>