Skip to content

bug(desktop): packaged macOS permission guide crashes while loading the app icon #3352

Description

@sunrioa

What happened

English

The packaged Maka 0.1.11 desktop app terminates when I start the guided authorization flow for Accessibility.

Expected behavior: the permission guide opens, displays the Maka application card and icon, and remains usable for dragging Maka into System Settings.

Actual behavior: Maka exits with EXC_BREAKPOINT (SIGTRAP) while Electron is loading the application bundle icon. The unpackaged Maka Dev build does not reproduce this crash.

简体中文

正式打包的 Maka 0.1.11 在启动“辅助功能”的引导授权流程时会直接退出。

预期行为:权限引导正常打开,显示 Maka 应用卡片和图标,并可以将 Maka 拖入系统设置完成授权。

实际行为:Electron 加载应用 Bundle 图标时,Maka 发生 EXC_BREAKPOINT (SIGTRAP) 并退出。未打包的 Maka Dev 开发版不会出现该崩溃。

How to reproduce

English

  1. Install and launch the packaged Maka 0.1.11 application on an Apple silicon Mac.
  2. Ensure that Accessibility permission has not been granted.
  3. Open Maka Settings → Permissions.
  4. Click Guide me for Accessibility.
  5. The macOS permission guide opens, and Maka terminates while loading or preparing the application icon.

I reproduced this behavior on my machine.

简体中文
  1. 在 Apple Silicon Mac 上安装并启动正式打包的 Maka 0.1.11。
  2. 确保尚未授予“辅助功能”权限。
  3. 打开 Maka“设置 → 权限”。
  4. 点击“辅助功能”旁边的“引导授权”。
  5. macOS 权限引导出现后,Maka 在加载或准备应用图标时崩溃退出。

我已在自己的电脑上复现该问题。

Environment

  • Maka version or commit: 0.1.11
  • Build: packaged desktop release installed from DMG
  • OS: macOS 26.5.2 (25F84)
  • Device: Mac16,10
  • Architecture: Apple silicon (arm64)
  • Electron: 43.2.0
  • Surface: Desktop
  • Node.js version: N/A (packaged application)
简体中文
  • Maka 版本:0.1.11
  • 构建类型:通过 DMG 安装的正式打包版本
  • 操作系统:macOS 26.5.2 (25F84)
  • 设备型号:Mac16,10
  • 架构:Apple silicon (arm64)
  • Electron:43.2.0
  • 使用入口:Desktop
  • Node.js 版本:不适用(正式打包应用)

Logs, screenshots, or additional context

English

Crash information:

  • Exception: EXC_BREAKPOINT (SIGTRAP)
  • Crashing thread: ThreadPoolForegroundWorker
  • Symbolicated Electron frame: IconLoader::ReadIcon()
  • Relevant Electron offsets: 0x87cc018 and 0x87cbed0

The available evidence points to the two packaged-only calls to:

app.getFileIcon(..., { size: 'large' })

Electron documents the large icon size as unsupported on macOS:

https://www.electronjs.org/docs/latest/api/app#appgetfileiconpath-options

This is a packaged-build follow-up to #1919 and #1920. Issue #1919 covered development/unpackaged Electron, and PR #1920 intentionally skips native icon loading only for unpackaged builds while retaining it for packaged builds.

简体中文

崩溃信息:

  • 异常类型:EXC_BREAKPOINT (SIGTRAP)
  • 崩溃线程:ThreadPoolForegroundWorker
  • Electron 符号化结果:IconLoader::ReadIcon()
  • 相关 Electron 偏移:0x87cc0180x87cbed0

目前的证据指向正式打包路径中的两处调用:

app.getFileIcon(..., { size: 'large' })

Electron 文档明确说明 macOS 不支持 large 图标尺寸。

这是 #1919#1920 在正式打包版本上的后续问题。#1919 处理的是开发版/未打包 Electron,#1920 也只在未打包构建中跳过原生图标读取,正式打包路径仍然保留。

AI use

OpenAI Codex assisted with crash-log analysis, symbolication, and drafting this report. I reviewed the reproduction details and the final report.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions