SIGCHLD can differ

This commit is contained in:
jsorg71 2005-07-11 00:41:07 +00:00
parent d349f6920a
commit 666b5dd175
4 changed files with 21 additions and 1 deletions

View File

@ -769,6 +769,16 @@ g_signal(int sig_num, void (*func)(int))
#endif
}
/*****************************************************************************/
void
g_signal_child_stop(void (*func)(int))
{
#if defined(_WIN32)
#else
signal(SIGCHLD, func);
#endif
}
/*****************************************************************************/
int
g_fork(void)

View File

@ -134,6 +134,8 @@ g_execlp11(char* a1, char* a2, char* a3, char* a4, char* a5, char* a6,
char* a7, char* a8, char* a9, char* a10, char* a11);
void
g_signal(int sig_num, void (*func)(int));
void
g_signal_child_stop(void (*func)(int));
int
g_fork(void);
int

View File

@ -296,7 +296,7 @@ start_session(int width, int height, int bpp, char* username, char* password)
}
else /* parent */
{
g_signal(17, cterm); /* SIGCHLD */
g_signal_child_stop(cterm); /* SIGCHLD */
session_items[display].pid = pid;
g_strcpy(session_items[display].name, username);
session_items[display].display = display;

View File

@ -26,3 +26,11 @@ ip=ask
port=ask5900
username=na
password=ask
[vnc4]
name=sesman-any
lib=../vnc/libvnc.so
ip=ask
port=-1
username=ask
password=ask