Skip to content

[ticket/17655] Do not render raw codepoint shortcodes as emoji#6992

Open
ECYaz wants to merge 1 commit into
phpbb:3.3.xfrom
ECYaz:ticket/17655
Open

[ticket/17655] Do not render raw codepoint shortcodes as emoji#6992
ECYaz wants to merge 1 commit into
phpbb:3.3.xfrom
ECYaz:ticket/17655

Conversation

@ECYaz

@ECYaz ECYaz commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Checklist:

  • Correct branch: 3.3.x for fixes
  • Tests pass
  • Code follows coding guidelines
  • Commit follows commit message format

Tracker ticket:

https://tracker.phpbb.com/browse/PHPBB-17655

The Emoji plugin renders sequences of hexadecimal digits between colons such as :123c: as emoji images of the corresponding codepoint. Such sequences commonly appear as segments of IPv6 addresses, so posting an address like 2a09:bac3:616e:123c::1d1:f0 mangles the text and generates failing image requests to the emoji CDN, which slow down the page for the reader.

This adds a filter to the EMOJI tag that rejects these raw codepoint shortcodes so they remain plain text. Emoji shortnames such as :joy:, Unicode emoji and regular smilies are unaffected, verified by new test cases. The :1234: shortname is rejected as well since it cannot be told apart from a segment of an IPv6 address.

The Emoji plugin renders sequences of hexadecimal digits between colons
such as ":123c:" as emoji images of the corresponding codepoint. Such
sequences commonly appear as segments of IPv6 addresses, mangling the
address and causing failing image requests to the emoji CDN which slow
down the page for the reader.

Add a filter to the EMOJI tag that rejects these shortcodes so they
remain plain text. Emoji shortnames such as ":joy:" and Unicode emoji
are unaffected. The ":1234:" shortname is rejected as well, as it
cannot be told apart from a segment of an IPv6 address.

PHPBB-17655
@github-actions

Copy link
Copy Markdown

The attempt to merge branch 3.3.x into master has completed after considering the changes in this PR.

  • Merge result: Conflict ❌

A separate PR will be needed to merge 3.3.x into master.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant