ProtonMail / ProtonMail/WebClients

Proton Mail desktop crashes at startup: EXCEPTION_ACCESS_VIOLATION at Proton Mail.exe+0x2c730ca on Windows 11 24H2

Open
#528 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
5.6k
Forks
715
PR merge metrics
No merged PRs in 30d

Description

Summary

Proton Mail desktop app crashes deterministically at startup on Windows 11 24H2. Crash is version-independent (reproduced on 1.13.0, 1.4.0, and 1.7.1 — all three). GPU driver updates did not help.

Environment

Component Value
OS Windows 11 Pro 24H2 (Build 26200.8328)
CPU Intel Core i7-8700 (Coffee Lake, 6C/12T, 3.20 GHz)
iGPU Intel UHD Graphics 630
dGPU NVIDIA GeForce RTX 2060 (driver 32.0.16.1088, Game Ready 22-07-2026)
Motherboard MSI H310M PRO-M2 PLUS (MS-7C08)
RAM 16 GB
Working Proton Pass 1.36.1 (with GPU flags), Discord, CurseForge

Crash Signature

ExceptionCode:    EXCEPTION_ACCESS_VIOLATION (0xc0000005)
ExceptionAddress: 0x<base> + 0x2c730ca
Module:           Proton Mail.exe (172.1 MB binary)
Section:          .text
Registers:        Rax=2, Rbx=0, Rcx=0, Rdx=4, Rbp=0  (null pointer dereference)
Consistent:       YES — same offset on every crash, every version (1.4.0, 1.7.1)

What Proton Mail reports about GPU (from main.log)

{
  "gpuDevice": [
    {"deviceString": "NVIDIA GeForce RTX 2060", "active": false},
    {"deviceString": "Intel(R) UHD Graphics 630", "active": false},
    {"deviceString": "Microsoft Basic Render Driver", "active": false}
  ],
  "glImplementationParts": "(gl=none,angle=none)",
  "vulkanVersion": "Not supported",
  "inProcessGpu": true
}

All 3 GPUs report active: false. App crashes during loadURL https://mail.proton.me/ in renderer initialization.

Versions Tested

Version Result Binary size
1.13.0 (original) Crash at offset 0x242d60a 208 MB
1.4.0 (forced via Squirrel) Crash at offset 0x2c730ca 172 MB
1.7.1 (latest, forced via Squirrel) Crash at offset 0x2c730ca 172 MB

Steps That Did NOT Fix It

  1. GPU flags: --disable-gpu --disable-gpu-sandbox --disable-software-rasterizer --no-sandbox --disable-d3d11 --use-gl=disabled --in-process-gpu --disable-features=Vulkan,UseSkiaRenderer
  2. Wipe Crashpad, Cache, GPUCache, Local Storage, Session Storage, blob_storage, config.json from Roaming
  3. Forced Squirrel updates: 1.13.0 → 1.4.0 → 1.7.1 (all crash with same offset)
  4. NVIDIA GeForce driver update (32.0.16.1088, latest)
  5. Intel DSA — reports "up to date" but Intel UHD 630 driver remains 31.0.101.2115 from 2022-11-16 (couldn't find newer standalone)

Workaround

Use Proton Mail via mail.proton.me in browser. Works perfectly. Proton Pass desktop, Discord, CurseForge all work with various GPU-disable flag combinations.

Hypothesis

Crash at offset 0x2c730ca in .text section suggests:

  • Proton Mail tries to bind a GPU context during renderer init (loadURL)
  • Binding fails because all GPUs report active: false
  • null pointer / invalid handle dereferenced during error path
  • Likely a CHECK() or DCHECK() macro not designed for "no GPU available" case

Minidumps

Crashpad dumps preserved at:
C:\Users\rainb\AppData\Roaming\Proton Mail\Crashpad\reports\

3 dumps available (34 MB each):

  • e936f1ea-a98f-46b9-a551-8b2285708b87.dmp (2026-08-07 23:25:42)
  • 8f516d55-1d12-4a9a-be31-99e9a3a3af81.dmp (2026-08-07 21:51:16)
  • 175ce38a-d974-4696-b5d6-637807b311cd.dmp (2026-08-07 21:54:42)

User willing to provide dumps via Dropbox / similar if needed.

Requested Fix

  1. Better handling of "no GPU active" case (e.g., fallback to SwiftShader / LLVMpipe / software rendering)
  2. Or: allow explicit GPU disabling via app config (similar to Discord's chromiumSwitches in settings.json)
  3. Investigate why all 3 GPUs report active: false on this configuration

User Impact

  • App completely unusable on desktop since 2026-07-22 (last successful use)
  • Forced to use web client as workaround
  • Affects Proton Mail only — Proton Pass, Discord, CurseForge work fine on same system

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the preserved Crashpad dumps and main.log GPU fields, then reproduce startup on Windows 11 24H2 while observing renderer initialization at loadURL https://mail.proton.me/. Compare the affected versions and verify whether the fix prevents the deterministic crash when all GPUs report active: false; the issue does not identify a source file or test.

Written by the indexing model from the issue text.

Assessment

Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.