13
0

Handle vfork/exec failure

Don't call atexit, exit without cleanup.
This commit is contained in:
Robin Gareus 2020-10-31 22:33:10 +01:00
parent a9bd7b2848
commit cf0904f752
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
3 changed files with 3 additions and 3 deletions

View File

@ -562,7 +562,7 @@ PulseAudioBackend::launch_control_app ()
{
if (::vfork () == 0) {
::execlp ("pavucontrol", "pavucontrol", (char*)NULL);
exit (EXIT_SUCCESS);
_exit (EXIT_SUCCESS);
}
}

View File

@ -72,7 +72,7 @@ PBD::open_uri (const char* uri)
if (::vfork () == 0) {
::execlp ("xdg-open", "xdg-open", s.c_str(), (char*)NULL);
exit (EXIT_SUCCESS);
_exit (EXIT_SUCCESS);
}
#endif /* not PLATFORM_WINDOWS and not __APPLE__ */

View File

@ -818,7 +818,7 @@ SystemExec::start (StdErrMode stderr_mode, const char *vfork_exec_wrapper)
char buf = 0;
(void) ::write (pok[1], &buf, 1);
close_fd (pok[1]);
exit (EXIT_FAILURE);
_exit (EXIT_FAILURE);
return -1;
}