When I start skype, it starts up correctly. But if I quit it by closing the window, the process is not terminated although no window is open any more. Closing the app by choosing 'Close' from the menu terminates the process like expected. So when started from a terminal shell, pressing Ctrl-C is required to stop the process after closing the window. Maybe the event of closing the window is not handled correctly? [ebuild R ] net-im/skype-1.2.0.18 USE="esd -arts -static" Here are the last lines that seem to be relevant from strace: After just closing the window: --- SIGCHLD (Child exited) @ 0 (0) --- waitpid(-1, 0xbfd0e328, WNOHANG) = -1 ECHILD (No child processes) sigreturn() = ? (mask now []) rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 read(255, "\n#Going to \"homedir\"\ncd ${progpa"..., 2156) = 421 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 stat64("/opt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat64("/opt/skype", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 chdir("/opt/skype") = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 open("/home/dustin/.Skype/skype.log", O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 3 fcntl64(1, F_GETFD) = 0 fcntl64(1, F_DUPFD, 10) = 10 fcntl64(1, F_GETFD) = 0 fcntl64(10, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 write(1, "esddsp /opt/skype/skype.bin --re"..., 57) = 57 dup2(10, 1) = 1 fcntl64(10, F_GETFD) = 0x1 (flags FD_CLOEXEC) close(10) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 write(1, "================================"..., 43========================================== ) = 43 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat64("/usr/local/bin/esddsp", 0xbfd0ecbc) = -1 ENOENT (No such file or directory) stat64("/usr/bin/esddsp", {st_mode=S_IFREG|0755, st_size=2062, ...}) = 0 open("/proc/sys/kernel/ngroups_max", O_RDONLY) = 3 read(3, "65536\n", 31) = 6 close(3) = 0 mmap2(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7c07000 getgroups32(65536, [10, 18, 100]) = 3 stat64("/usr/bin/esddsp", {st_mode=S_IFREG|0755, st_size=2062, ...}) = 0 rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0 _llseek(255, -237, [1919], SEEK_CUR) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7d736f8) = 700 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 rt_sigaction(SIGINT, {0x807eb20, [], 0}, {SIG_DFL}, 8) = 0 waitpid(-1, After choosing 'Close' from the menu: --- SIGCHLD (Child exited) @ 0 (0) --- waitpid(-1, 0xbff15528, WNOHANG) = -1 ECHILD (No child processes) sigreturn() = ? (mask now []) rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 read(255, "\n#Going to \"homedir\"\ncd ${progpa"..., 2156) = 421 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 stat64("/opt", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat64("/opt/skype", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 chdir("/opt/skype") = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 open("/home/dustin/.Skype/skype.log", O_WRONLY|O_APPEND|O_CREAT|O_LARGEFILE, 0666) = 3 fcntl64(1, F_GETFD) = 0 fcntl64(1, F_DUPFD, 10) = 10 fcntl64(1, F_GETFD) = 0 fcntl64(10, F_SETFD, FD_CLOEXEC) = 0 dup2(3, 1) = 1 close(3) = 0 write(1, "esddsp /opt/skype/skype.bin --re"..., 57) = 57 dup2(10, 1) = 1 fcntl64(10, F_GETFD) = 0x1 (flags FD_CLOEXEC) close(10) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 write(1, "================================"..., 43========================================== ) = 43 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 stat64(".", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 stat64("/usr/local/bin/esddsp", 0xbff15ebc) = -1 ENOENT (No such file or directory) stat64("/usr/bin/esddsp", {st_mode=S_IFREG|0755, st_size=2062, ...}) = 0 open("/proc/sys/kernel/ngroups_max", O_RDONLY) = 3 read(3, "65536\n", 31) = 6 close(3) = 0 mmap2(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7c57000 getgroups32(65536, [10, 18, 100]) = 3 stat64("/usr/bin/esddsp", {st_mode=S_IFREG|0755, st_size=2062, ...}) = 0 rt_sigprocmask(SIG_BLOCK, [INT CHLD], [], 8) = 0 _llseek(255, -237, [1919], SEEK_CUR) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0xb7dc36f8) = 756 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 rt_sigprocmask(SIG_BLOCK, [CHLD], [], 8) = 0 rt_sigaction(SIGINT, {0x807eb20, [], 0}, {SIG_DFL}, 8) = 0 waitpid(-1, [{WIFEXITED(s) && WEXITSTATUS(s) == 0}], 0) = 756 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 --- SIGCHLD (Child exited) @ 0 (0) --- waitpid(-1, 0xbff15c48, WNOHANG) = -1 ECHILD (No child processes) sigreturn() = ? (mask now []) rt_sigaction(SIGINT, {SIG_DFL}, {0x807eb20, [], 0}, 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 read(255, "\nif [[ $? -ne 0 ]] ; then\n\techo "..., 2156) = 237 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_BLOCK, NULL, [], 8) = 0 rt_sigprocmask(SIG_SETMASK, [], NULL, 8) = 0 munmap(0xb7c98000, 131072) = 0 exit_group(0) = ? Process 737 detached
Created attachment 98146 [details] emerge --info
Try with 1.3.0.37; if that doesn't help, try to ask upstream - http://forum.skype.com/
Now, if I understood correctly you are complaining about the expected behaviour that when you close the main window Skype still remains active in the system tray? This is the default behaviour for most of the applications that show a icon in system tray (almost all IM clients), and while most of them have a setting to disable this behaviour, Skype doesn't. Maybe you should ask it as a new feature from them.
Ah! This makes sense. Never thought about this. I am using wmaker as window maker without any system tray. That's why I thought something is wrong. Okay, then everyhing is working properly. Bug can be closed as invalid.