[Regression] Emojis fail to render on macOS in Lockdown mode - Firefox 146.0
Categories
(Core :: Graphics, defect, P3)
Tracking
()
People
(Reporter: tec.freenet, Assigned: nishu, NeedInfo)
References
(Regression)
Details
(Keywords: regression)
Attachments
(3 files)
User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:146.0) Gecko/20100101 Firefox/146.0
Steps to reproduce:
Environment:
Device: Mac (Apple Silicon / aarch64)
OS: macOS
Firefox Version: 146.0
Pre-check performed (Troubleshooting): I have already verified that my configuration is correct:
Settings > Fonts: "Allow pages to choose their own fonts" is ENABLED.
about:config: font.name-list.emoji is set to "Apple Color Emoji".
No emoji-blocking extensions are installed.
Verified this is NOT duplicate of Bug 1997435 (which is about the Input Picker, not rendering).
Steps:
Launch Firefox 146.0.
Navigate to Google Calendar (calendar.google.com).
Look at Event Titles or Calendar Names (in the sidebar) that contain emojis.
Actual results:
Emojis are not rendered within the Google Calendar interface. They appear as blank spaces, tofu, or generic placeholders in event titles and sidebar lists.
Note: I have specifically verified this issue on Google Calendar.
Expected results:
Firefox should correctly render the system emoji font (Apple Color Emoji), just like Safari and Chrome do on the same machine.
Comment 1•10 months ago
|
||
The Bugbug bot thinks this bug should belong to the 'Core::Widget: Cocoa' component, and is moving the bug to that component. Please correct in case you think the bot is wrong.
Updated•10 months ago
|
Comment 2•10 months ago
|
||
I can't reproduce this on my macOS system (running Sonoma 14.8.1); I tried logging in to Google Calendar with Firefox 146, and created a calendar name and an event with emojis in the title. They displayed as expected.
@tec.freenet, could you please try Troubleshoot Mode (from the Help menu), and confirm whether the problem still occurs?
Also, do emojis appear on other sites such as https://emojipedia.org or in the chart at https://en.wikipedia.org/wiki/List_of_emojis?
| Reporter | ||
Comment 3•10 months ago
|
||
Hello Jonathan, thanks for looking into this.
I performed the tests you requested:
Troubleshoot Mode: I restarted Firefox in Troubleshoot Mode. The issue persists. Emojis are still not visible within the Google Calendar interface (they appear as blank spaces/tofu), exactly as in normal mode.
Other Sites: I checked emojipedia.org and en.wikipedia.org/wiki/List_of_emojis. On these sites, emojis render correctly.
Summary: The rendering issue appears to be specific to Google Calendar on Firefox 146 (aarch64). The system font ("Apple Color Emoji") is working fine on other pages and in other browsers (Safari) on the same machine, but fails to render specifically within the Google Calendar UI in Firefox.
Comment 4•9 months ago
|
||
I'm experiencing the same issue, but across all web pages (not just Google Calendar). I'm using Firefox 146.0 on macOS Tahoe 26.1, and emoji fail to render for me on all web pages (Github, Wikipedia, Google, etc.)
The issue persists when I enable Troubleshoot Mode.
Please let me know what diagnostics I can provide.
For my system the issue only started appearing (as in, emoji disappearing) in macOS Tahoe 26.2. The system is in lockdown mode. Other apps like Element.app also have issues rendering emojis. While apps like Sublime text and Terminal render emojis perfectly fine.
Comment 6•9 months ago
|
||
Ah – I should clarify that I am also running with macOS in Lockdown Mode (but similarly, apps other than Firefox seem to behave fine re: emoji).
| Reporter | ||
Comment 7•9 months ago
|
||
CONFIRMED: The issue is caused by macOS Lockdown Mode
Like the other users reported above, I can confirm that my system is in Lockdown Mode.
I just performed a verification test by temporarily disabling Lockdown Mode and restarting my Mac:
- With Lockdown Mode OFF: Emojis render CORRECTLY in Google Calendar.
- With Lockdown Mode ON: Emojis fail to render (blank spaces/tofu).
I have re-enabled Lockdown Mode now as I rely on it for security.
Since this setup worked fine in previous Firefox versions, this confirms a regression in Firefox 146 regarding compatibility with macOS Lockdown Mode constraints. Please fix this so we don't have to compromise on security.
I bisected this to https://phabricator.services.mozilla.com/D263792, tested by putting random emoji in the address bar using the emoji picker.
I made some wild guesses at relevant about:config entries, and setting either one of layers.gpu-process.enabled to false or security.sandbox.gpu.level to 0 and restarting Firefox fixes it.
| Reporter | ||
Comment 9•9 months ago
|
||
Verified: The workaround works
I tested the workaround by setting security.sandbox.gpu.level to 0 and restarting. I can confirm that this fixes the rendering issue on my end: emojis are visible again in Google Calendar even with Lockdown Mode enabled.
Thanks for the incredibly fast diagnosis and bisection! I will use this workaround for now while waiting for the official patch.
Comment 10•9 months ago
|
||
No problem! I was just looking to see if anybody had reported it yet. I want emojis back too 😓
I think this is the same as https://issues.chromium.org/issues/403993360.
In Lockdown Mode, Apple renders images, including emoji, in an out of process sandbox, much the same as Firefox's sandboxing. Normally this is done transparently through the Image IO framework, but Firefox's sandbox blocks connecting to the image processing process.
Long-term, based on the Chromium thread it sounds like the fix is to petition Apple for an exception, since there's no sense in sandboxing it twice.
As a short term workaround, adding com.apple.ImageIOXPCService to SandboxPolicyGPU.h allows it to work.
I've verified the quick fix on my machine and I can get a pull request ready. However, I'm not entirely sure how to run the sandbox tests locally, let alone ensure it runs on a Lockdown Mode CI machine.
Comment 11•9 months ago
|
||
Thanks for bisecting! Brad, can you take a look?
Comment 12•9 months ago
|
||
This looks a lot like bug 1993258 so cc-ing haik too.
Comment 13•9 months ago
|
||
[Tracking Requested - why for this release]: Seems like an annoying regression
Comment 14•9 months ago
|
||
Set release status flags based on info from the regressing bug 1985082
Comment 15•9 months ago
|
||
Tracking but it's too late for Fx146.
Fx147 goes to release next week. We could uplift a fix if we have a low risk patch in time.
Comment 16•9 months ago
|
||
The bug is marked as tracked for firefox146 (release), tracked for firefox147 (beta) and tracked for firefox148 (nightly). We have limited time to fix this, the soft freeze is in 7 days. However, the bug still isn't assigned.
:bhood, could you please find an assignee for this tracked bug? Given that it is a regression and we know the cause, we could also simply backout the regressor. If you disagree with the tracking decision, please talk with the release managers.
For more information, please visit BugBot documentation.
Comment 17•9 months ago
|
||
As an immediate fix here, I think we should take the suggestion from comment 9:
As a short term workaround, adding
com.apple.ImageIOXPCServiceto SandboxPolicyGPU.h allows it to work.
(thanks for the investigation, @mattheww!), even though I don't think we're set up to verify it in automation at present. This seems clear & simple enough that we can safely land and uplift it.
Comment 18•9 months ago
|
||
Updated•9 months ago
|
Comment 19•9 months ago
|
||
It's too late for Fx146, Fx147 goes to release next week.
We could try to take this for 147.0 if we get an uplift request in time.
Comment 20•9 months ago
|
||
Comment 21•9 months ago
|
||
I'm not comfortable shipping this fix, specifically adding com.apple.ImageIOXPCService without more investigation. It may be the right fix, but I'd like to spend more time on it.
com.apple.ImageIOXPCService has been involved in sandbox escapes in the past and rushing this in over the holiday break for a minority of users running lockdown mode is unwarranted.
Comment 22•9 months ago
|
||
Comment 23•9 months ago
|
||
Backed out as requested: https://hg-edge.mozilla.org/integration/autoland/rev/318e5c2eb991
Updated•9 months ago
|
Comment 24•9 months ago
|
||
Given the last comment in the Phab revision, should we re-land this?
Comment 25•8 months ago
|
||
Set release status flags based on info from the regressing bug 1985082
Updated•8 months ago
|
Updated•8 months ago
|
Updated•8 months ago
|
Updated•8 months ago
|
Updated•6 months ago
|
Comment 26•6 months ago
|
||
The severity field is not set for this bug.
:bhood, could you have a look please?
For more information, please visit BugBot documentation.
Updated•6 months ago
|
Updated•6 months ago
|
| Assignee | ||
Comment 27•6 months ago
|
||
Updated•6 months ago
|
Updated•6 months ago
|
Comment 28•6 months ago
|
||
Comment 29•6 months ago
|
||
| bugherder | ||
Comment 30•6 months ago
|
||
Since nightly and release are affected, beta will likely be affected too.
For more information, please visit BugBot documentation.
Comment 31•6 months ago
|
||
The patch landed in nightly and beta is affected.
:nishu, is this bug important enough to require an uplift?
- If yes, please nominate the patch for beta approval.
- See https://wiki.mozilla.org/Release_Management/Requesting_an_Uplift for documentation on how to request an uplift.
- If no, please set
status-firefox150towontfix.
For more information, please visit BugBot documentation.
Comment 32•6 months ago
|
||
Once this hits Release, we plan to contact Apple to request being added to the list of bundle IDs that do not require remoting the ImageIO service. See @mattheww's informative comment 10 explanation. I confirmed the allow list is still used in lldb.
Updated•6 months ago
|
| Assignee | ||
Comment 34•6 months ago
|
||
Original Revision: https://phabricator.services.mozilla.com/D291589
Updated•6 months ago
|
Comment 35•6 months ago
|
||
firefox-beta Uplift Approval Request
- User impact if declined/Reason for urgency: On macOS Apple Silicon systems with Lockdown Mode enabled, emojis fail to render because Firefox’s GPU sandbox blocks the ImageIO service Apple uses in this mode.
- Code covered by automated testing?: yes
- Fix verified in Nightly?: no
- Needs manual QE testing?: yes
- Steps to reproduce for manual QE testing: 1. Enable Lockdown Mode on a Mac
- Go to Google Calendar (or similar)
- Confirm: Before fix -> emojis appear blank/placeholders, After fix -> emojis render correctly
- Risk associated with taking this patch: low
- Explanation of risk level: This is a small, macOS-only change to the GPU sandbox policy. It only affects a limited set of users (macOS Apple Silicon with Lockdown Mode enabled), so overall user impact is low. The change is limited in scope and is not expected to impact other platforms or normal browsing behavior.
- String changes made/needed?: No
- Is Android affected?: no
Updated•6 months ago
|
Updated•6 months ago
|
Comment 36•6 months ago
|
||
| uplift | ||
Comment 37•6 months ago
|
||
Is this something we should add to the Fx150 relnotes?
Updated•6 months ago
|
Comment 39•6 months ago
|
||
(In reply to Ryan VanderMeulen [:RyanVM] from comment #37)
Is this something we should add to the Fx150 relnotes?
Let's add it.
Comment 40•6 months ago
|
||
Release Note Request (optional, but appreciated)
[Why is this notable]:
For users of macOS Lockdown Mode (described here), the bug prevented emoji characters from being displayed in web content.
[Affects Firefox for Android]:
No
[Suggested wording]:
Fixed an issue on macOS where, when macOS Lockdown mode is enabled, emoji characters are not displayed in web content.
[Links (documentation, blog post, etc)]:
About macOS Lockdown Mode - https://support.apple.com/en-us/105120
Comment 41•6 months ago
|
||
This bug affects Intel and Apple Silicon machines.
Updated•6 months ago
|
Updated•6 months ago
|
Comment 43•6 months ago
|
||
Hello! I reproduced the issue with Firefox 149.0.2 on macOS 26.1 aarch and macOS 15 Intel. The emojis are not displayed for a Google Calendar meeting. I have also seen the issue on a google search fir the emojipedia result.
The issue is verified fixed with Firefox 151.0a1 (2026-04-07) and 150.0b7 (from comment 36) on macOS 26.1 aarch and macOS 15 Intel & aarch. The emojis are correctly displayed for the same Google Calendar meeting and google search.
Comment 44•6 months ago
|
||
firefox-beta Uplift Approval Request
- User impact if declined/Reason for urgency: On macOS with Lockdown Mode enabled, emojis fail to render because Firefox’s GPU sandbox blocks the ImageIO service Apple uses in this mode.
- Code covered by automated testing?: yes
- Fix verified in Nightly?: no
- Needs manual QE testing?: yes
- Steps to reproduce for manual QE testing: 1. Enable Lockdown Mode on a Mac
- Go to Google Calendar (or similar)
- Confirm: Before fix -> emojis appear blank/placeholders, After fix -> emojis render correctly
- Risk associated with taking this patch: low
- Explanation of risk level: This is a small, macOS-only change to the GPU sandbox policy. It only affects a limited set of users (macOS Apple Silicon with Lockdown Mode enabled), so overall user impact is low. The change is limited in scope and is not expected to impact other platforms or normal browsing behavior.
- String changes made/needed?: No
- Is Android affected?: no
Description
•