zed-industries/zed · error

unable to spawn server process

Error message

unable to spawn server process

What it means

Fires in the crash handler setup (macOS/Unix path) when the crash-handler subprocess cannot be spawned via async_process::Command (missing executable, fork/exec failure). The panic hook cannot report crashes without this server process.

Source

Thrown at crates/crashes/src/crashes.rs:587

        unsafe {
            mach2::task::task_threads(task, &raw mut threads, &raw mut count);
        }
        let current = unsafe { mach2::mach_init::mach_thread_self() };
        for i in 0..count {
            let t = unsafe { *threads.add(i as usize) };
            if t != current {
                unsafe { mach2::thread_act::thread_resume(t) };
            }
        }
    }
}
#[cfg(not(target_os = "windows"))]
fn spawn_crash_handler(exe: &Path, socket_name: &Path) -> async_process::Child {
    async_process::Command::new(exe)
        .arg("--crash-handler")
        .arg(&socket_name)
        .spawn()
        .expect("unable to spawn server process")
}

#[cfg(target_os = "windows")]
fn spawn_crash_handler(exe: &Path, socket_name: &Path) {
    use std::ffi::OsStr;
    use std::iter::once;
    use std::os::windows::ffi::OsStrExt;
    use windows::Win32::System::Threading::{
        CreateProcessW, PROCESS_CREATION_FLAGS, PROCESS_INFORMATION, STARTF_FORCEOFFFEEDBACK,
        STARTUPINFOW,
    };
    use windows::core::PWSTR;

    let mut command_line: Vec<u16> = OsStr::new(&format!(
        "\"{}\" --crash-handler \"{}\"",
        exe.display(),
        socket_name.display()
    ))

View on GitHub (pinned to f4178619ac)

Solutions

  1. Verify the crash-handler executable path exists and is executable
  2. Check resource limits (RLIMIT_NPROC) and fork availability
  3. Ensure no sandbox policy blocks process spawning at panic time
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at crates/crashes/src/crashes.rs:587 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of zed-industries/zed@f4178619ac (2026-08-20). Data as JSON: /api/errors/086acbaf4a009ed0. Report an issue: GitHub.