mirror of
git://projects.qi-hardware.com/gmenu2x.git
synced 2024-11-23 02:11:54 +02:00
Before launching any app, update the standard I/O file descriptors
This commit is contained in:
parent
6a9f429f32
commit
d6cdb90c81
@ -561,11 +561,15 @@ void LinkApp::launch(const string &selectedFile, const string &selectedDir) {
|
|||||||
not going to work correctly. Actually this would not be
|
not going to work correctly. Actually this would not be
|
||||||
necessary, if SDL correctly restored terminal state after
|
necessary, if SDL correctly restored terminal state after
|
||||||
SDL_Quit(). */
|
SDL_Quit(). */
|
||||||
pid_t pid = setsid();
|
(void) setsid();
|
||||||
if (pid == (pid_t)-1) {
|
|
||||||
WARNING("Failed to create new process group\n");
|
|
||||||
}
|
|
||||||
ioctl(1, TIOCSCTTY, STDOUT_FILENO);
|
ioctl(1, TIOCSCTTY, STDOUT_FILENO);
|
||||||
|
(void) dup2(STDOUT_FILENO, 0);
|
||||||
|
(void) dup2(STDOUT_FILENO, 1);
|
||||||
|
(void) dup2(STDOUT_FILENO, 2);
|
||||||
|
|
||||||
|
if (STDOUT_FILENO > 2)
|
||||||
|
close(STDOUT_FILENO);
|
||||||
|
|
||||||
int pgid = tcgetpgrp(STDOUT_FILENO);
|
int pgid = tcgetpgrp(STDOUT_FILENO);
|
||||||
signal(SIGTTOU, SIG_IGN);
|
signal(SIGTTOU, SIG_IGN);
|
||||||
|
Loading…
Reference in New Issue
Block a user