From 74ca61fbd5c1c1ea7d96981c99064967f14e2233 Mon Sep 17 00:00:00 2001 From: Chiraag Nataraj Date: Sun, 30 Jul 2017 14:22:36 -0400 Subject: Remove debugging stuff, free start_child, exit properly --- src/firejail/x11.c | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/firejail/x11.c b/src/firejail/x11.c index 01a40383d..d7b50e936 100644 --- a/src/firejail/x11.c +++ b/src/firejail/x11.c @@ -685,21 +685,13 @@ void x11_start_xpra(int argc, char **argv) { char *start_child_prefix = "--start-child="; char *start_child; start_child = malloc(total_length + strlen(start_child_prefix) + fpos + 2); - printf("START_CHILD: %s\n", start_child); - printf("START_CHILD_PREFIX: %s\n", start_child_prefix); strcpy(start_child,start_child_prefix); - printf("START_CHILD: %s\n", start_child); for(i = 0; i < fpos; i++) { - printf("%s\n",firejail_argv[i]); strncat(start_child,firejail_argv[i],strlen(firejail_argv[i])); if(i != fpos - 1) strncat(start_child," ",strlen(" ")); } - /* strncat(start_child,"\'",strlen("\'")); */ - - printf("START_CHILD: %s\n", start_child); - server_argv[spos++] = start_child; server_argv[spos++] = NULL; @@ -870,6 +862,15 @@ void x11_start_xpra(int argc, char **argv) { /* sleep(1); // adding a delay in order to let the server start */ + // wait for server to end + while (1) { + pid_t pid = wait(NULL); + if (pid == server) { + free(start_child); + exit(0); + } + } + // wait for jail or server to end /* while (1) { */ /* pid_t pid = wait(NULL); */ -- cgit v1.2.3-70-g09d2