wailsapp/wails · warning
error fixing handler for signal %d, please report this issue
Error message
error fixing handler for signal %d, please report this issue to https://github.com/wailsapp/wails: %s\n
What it means
This is a C-level stderr message from Wails v2's Linux frontend (linux_shared.c-style code embedded in frontend.go): fix_signal() re-installs each inherited signal handler with SA_ONSTACK so the crash handler (SIGSEGV etc.) runs on an alternate stack. The message prints when sigaction() itself fails while reading or modifying a handler, including errno text; it is diagnostic output, not a crash.
Source
Thrown at v2/internal/frontend/desktop/linux/frontend.go:33
#include <errno.h>
#include <signal.h>
#include <stdio.h>
#include <string.h>
static void fix_signal(int signum)
{
struct sigaction st;
if (sigaction(signum, NULL, &st) < 0) {
goto fix_signal_error;
}
st.sa_flags |= SA_ONSTACK;
if (sigaction(signum, &st, NULL) < 0) {
goto fix_signal_error;
}
return;
fix_signal_error:
fprintf(stderr, "error fixing handler for signal %d, please "
"report this issue to "
"https://github.com/wailsapp/wails: %s\n",
signum, strerror(errno));
}
static void install_signal_handlers()
{
#if defined(SIGCHLD)
fix_signal(SIGCHLD);
#endif
#if defined(SIGHUP)
fix_signal(SIGHUP);
#endif
#if defined(SIGINT)
fix_signal(SIGINT);
#endif
#if defined(SIGQUIT)
fix_signal(SIGQUIT);View on GitHub (pinned to 0e754b1b40)
Solutions
- Treat as a warning first: check whether crash reporting (stack traces on SIGSEGV) still works; if yes, ignore
- In containers, relax the seccomp profile to allow sigaction, or run with --security-opt seccomp=unconfined to verify it is the cause
- Update Wails — newer versions scope the fix to specific signals and tolerate failure more gracefully
- If the environment truly forbids sigaction, accept degraded crash-handler behavior; the app itself keeps running
Defensive patterns
Strategy: fallback
Prevention
- Permit sigaction in container/sandbox seccomp profiles
- Check that crash stack traces still work; the warning only degrades alternate-stack handling
- Keep Wails updated and report recurring cases upstream with signal number and errno
When it happens
Trigger: Running the binary in environments that block sigaction (some seccomp/container sandboxes return EPERM); a signal number not valid on the kernel in use (EINVAL); running under a supervisor (e.g. certain init systems, gdb, wine) that installed handlers incompatible with modification.
Common situations: Docker/gVisor/sandboxes with restricted seccomp profiles; cross-building or running under qemu-user where some signals are absent; the message appears once per signal at startup and the app otherwise works.
Related errors
- error fixing handler for signal %d, please report this issue
- error fixing handler for signal %d, please report this issue
- It's not possible to use the deprecated Assets and AssetsHan
- Unknown menu type for newMenuItemImpl: %v
- implement me
AI-assisted analysis of wailsapp/wails@0e754b1b40 (2026-08-15).
Data as JSON: /api/errors/2688db9f29929ded.
Report an issue: GitHub.