Skip to content

Disable SIGCHLD handler if astcanary thread is inactive to avoid conflicts with Google Breakpad, REF 14749

Iryna Antsyferova requested to merge fix_breakpad into asterisk_rdkb

Tested with "kill -11 <asterisk pid>" The issue is that the sig handler restarts child process/processes, and the breakpad doesn't handle the signal for some reason even if it registers its handler before child_handler. The comment in the code says that child_handler is needed to ensure that if the canary fails that it doesn't kill the Asterisk. canary_thread is running in case Asterisk is started with -p parameter (Run as pseudo-realtime thread), which is not our case. The ast_opt_high_priority checks if AST_OPT_FLAG_HIGH_PRIORITY is set (which occurs when -p is used).

Merge request reports