Codex App: CodexDockTilePlugin setDockTile: infinite recursion → stack-overflow crash (EXC_BAD_ACCESS) on macOS 27

Resolved 💬 2 comments Opened Jun 16, 2026 by jizhi0v0 Closed Jun 16, 2026
💡 Likely answer: A maintainer (github-actions[bot], contributor) responded on this thread — see the highlighted reply below.

What version of the Codex App are you using? (From "About Codex" dialog)

26.609.71450 (build 3965)

What subscription do you have?

N/A — this is a native crash that appears independent of plan. Happy to provide if needed.

What platform is your computer?

uname -mprs: Darwin 27.0.0 arm64 arm
macOS 27.0 (build 26A5353q), Apple Silicon (arm64).

What issue are you seeing?

The Codex dock tile plugin crashes with an infinite recursion / stack overflow.

-[CodexDockTilePlugin_com_openai_codex setDockTile:] re-enters itself ~37,330 frames deep until it hits the stack guard page → EXC_BAD_ACCESS (SIGSEGV).

The crash is generated inside macOS's Dock dock-tile XPC host (com.apple.dock.external.extra.arm64), so it shows up in Crash Reporter under that Apple process name — but the faulting image is Codex's plugin:
/Applications/Codex.app/Contents/PlugIns/CodexDockTilePlugin.plugin/Contents/MacOS/CodexDockTilePlugin

It crashed 18 times in ~45 minutes (09:52–10:35, all identical, recursion depth 37330) during normal use.

Crash signature (PII redacted):

Exception:  EXC_BAD_ACCESS (SIGSEGV), KERN_PROTECTION_FAILURE
Message:    Could not determine thread index for stack guard region
OS:         macOS 27.0 (26A5353q), arm64

Triggered thread:
  0  objc_storeStrong
  1  -[CodexDockTilePlugin_com_openai_codex setDockTile:]
  2  -[CodexDockTilePlugin_com_openai_codex setDockTile:]   <-- recursionInfoArray depth: 37330
  ...
     _dispatch_call_block_and_release
     _dispatch_main_queue_drain
     __CFRUNLOOP_IS_SERVICING_THE_MAIN_DISPATCH_QUEUE__
     -[NSApplication run] / NSApplicationMain / xpc_main

Host process:    com.apple.dock.external.extra.arm64  (Dock dock-tile XPC service, Apple first-party)
Faulting image:  /Applications/Codex.app/Contents/PlugIns/CodexDockTilePlugin.plugin

Looks like setDockTile: is calling itself (e.g. a setter re-entering itself instead of super / the backing ivar), which becomes a fatal unbounded recursion.

What steps can reproduce the bug?

Not yet deterministic — it occurred repeatedly during normal Codex App use on macOS 27.0. It appears tied to dock-tile/badge updates (the crashes came in a tight burst). I'll update with a reliable repro if I find one.

What is the expected behavior?

The dock tile plugin should update the Dock tile without recursing into itself / crashing the Dock's XPC host.

Additional information

  • 18 identical crash reports, all EXC_BAD_ACCESS, all recursion depth 37330.
  • Possibly newly introduced: all crashes are from a single day; no earlier occurrences found locally.

View original on GitHub ↗

2 Comments

github-actions[bot] contributor · 2 months ago

Potential duplicates detected. Please review them and close your issue if it is a duplicate.

  • #28240
  • #28237
  • #27776
  • #27694
  • #28004

Powered by Codex Action

jizhi0v0 · 2 months ago

Closing as a duplicate of #27694 (also #27776 / #28237 / #28240) — same CodexDockTilePlugin setDockTile: infinite-recursion crash. Apologies for the noise.

Adding one data point for maintainers: still reproduces on Codex 26.609.71450 (build 3965) / macOS 27.0 (26A5353q), arm64 — 18 identical crashes (recursion depth 37330) in ~45 min.