28 #define G_LOG_DOMAIN "sd main"
36 waitpid (
pid, &status, WNOHANG);
46 if (getpgrp () != getpid ())
50 if (kill (0, sig) < 0)
59 if (kill (0, sig) < 0)
81 struct sigaction saNew, saOld;
84 sigfillset (&saNew.sa_mask);
85 sigdelset (&saNew.sa_mask, SIGALRM);
88 saNew.sa_handler = handler;
90 sigaction (signum, &saNew, &saOld);
91 return saOld.sa_handler;
100 waitpid (-1, NULL, WNOHANG);
108 char *message =
"SIGSEGV occurred!\n";
112 ret = backtrace (array, 10);
113 strings = backtrace_symbols (array, ret);
114 g_warning (
"%s", message);
116 for (left = 0; left < ret; left++)
117 g_warning (
"%s\n", strings[left]);
131 raise (given_signal);