Skip to content

Fix macOS Apple Silicon crash when painting emoji - #1372

Merged
visualfc merged 1 commit into
masterfrom
fix/macos-emoji-codesign
Sep 19, 2026
Merged

visualfc merged 1 commit into
masterfrom
fix/macos-emoji-codesign

Conversation

@visualfc

Copy link
Copy Markdown
Owner

修复 Apple Silicon 上编辑器绘制 emoji 时崩溃的问题。

崩溃特征:LiteEditorWidgetBase::paintEvent → CoreText CopyEmojiImage → ImageIO PNG 解码,EXC_ARM_DA_ALIGN at 0xbad4007。

原因:Apple Color Emoji 的 sbix PNG 在 ARM64 上需要进程启用 Hardened Runtime。当前 ad-hoc / linker-signed 签名没有 runtime 标志。

变更:

  • 新增 LiteIDE.entitlements(允许加载插件、DYLD 环境变量、unsigned executable memory)。
  • liteide.pro 在链接后 codesign,覆盖 Qt Creator Run/Debug。
  • macOS Qt5/Qt6 构建和部署脚本使用 --options runtime 签名。

验证:

  • 已对开发包和部署包执行 codesign,确认 flags=0x10002(adhoc,runtime)。

Sign LiteIDE with the Hardened Runtime so CoreText/ImageIO can decode
Apple Color Emoji instead of crashing at 0xbad4007 in paintEvent.
@visualfc
visualfc merged commit 3cd7b71 into master Sep 19, 2026
12 checks passed
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