# HG changeset patch # User Will Thompson # Date 1194010261 0 # Node ID 9838af97586b322b09605f636bad76b94263f0bc # Parent 0f4a5ff5dc844267f21444f6f341e1ff13364280 A pidgin fans in Great Britain.U.K thinks that nullclient should explicitly ignore SIGCHLD to avoid defunct dns resolution children. Really? diff -r 0f4a5ff5dc84 -r 9838af97586b libpurple/example/nullclient.c --- a/libpurple/example/nullclient.c Fri Nov 02 08:14:05 2007 +0000 +++ b/libpurple/example/nullclient.c Fri Nov 02 13:31:01 2007 +0000 @@ -269,6 +269,13 @@ PurpleAccount *account; PurpleSavedStatus *status; + /* libpurple's built-in DNS resolution forks processes to perform + * blocking lookups without blocking the main process. It does not + * handle SIGCHLD itself, so if the UI does not you quickly get an army + * of zombie subprocesses marching around. + */ + signal(SIGCHLD, SIG_IGN); + init_libpurple(); printf("libpurple initialized.\n");