aboutsummaryrefslogtreecommitdiffstats
path: root/mail/component-factory.c
diff options
context:
space:
mode:
authorEttore Perazzoli <ettore@src.gnome.org>2003-05-14 00:12:10 +0800
committerEttore Perazzoli <ettore@src.gnome.org>2003-05-14 00:12:10 +0800
commitcd1b05ca912641d3f4bbcd0cb0f5de34b8650a86 (patch)
tree0a86d96b14379a79048a79dcb8d14267ab1e222f /mail/component-factory.c
parent990d1ba48a42ca1888a19844b9f9daa34f4e619b (diff)
downloadgsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.tar
gsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.tar.gz
gsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.tar.bz2
gsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.tar.lz
gsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.tar.xz
gsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.tar.zst
gsoc2013-evolution-cd1b05ca912641d3f4bbcd0cb0f5de34b8650a86.zip
Removed. (make_factory): No need to set up the SIGSEGV redirect handler
* component-factory.c (segv_redirect): Removed. (make_factory): No need to set up the SIGSEGV redirect handler here, since it's already done in the shell now, and it's in-proc. * folder-browser-ui.c (folder_browser_ui_rm_all): Only do the bonobo_ui_component() stuff if the component does have a container. svn path=/trunk/; revision=21156
Diffstat (limited to 'mail/component-factory.c')
-rw-r--r--mail/component-factory.c40
1 files changed, 0 insertions, 40 deletions
diff --git a/mail/component-factory.c b/mail/component-factory.c
index a97926a03f..b2bc053cad 100644
--- a/mail/component-factory.c
+++ b/mail/component-factory.c
@@ -1612,31 +1612,6 @@ factory (BonoboGenericFactory *factory,
return NULL;
}
-/* The GNOME SEGV handler will lose if it's not run from the main Gtk
- * thread. So if we crash in another thread, redirect the signal.
- */
-static void (*gnome_segv_handler) (int);
-
-static GStaticMutex segv_mutex = G_STATIC_MUTEX_INIT;
-
-static void
-segv_redirect (int sig)
-{
- if (pthread_self () == mail_gui_thread)
- gnome_segv_handler (sig);
- else {
- pthread_kill (mail_gui_thread, sig);
- /* We can't return from the signal handler or the
- * thread may SEGV again. But we can't pthread_exit,
- * because then the thread may get cleaned up before
- * bug-buddy can get a stack trace. So we block by
- * trying to lock a mutex we know is already locked.
- */
- g_static_mutex_lock (&segv_mutex);
- }
-}
-
-
static Bonobo_Unknown
make_factory (PortableServer_POA poa, const char *iid, gpointer impl_ptr, CORBA_Environment *ev)
{
@@ -1644,21 +1619,6 @@ make_factory (PortableServer_POA poa, const char *iid, gpointer impl_ptr, CORBA_
static int init = 0;
if (!init) {
- sigaction (SIGSEGV, NULL, &osa);
- if (osa.sa_handler != SIG_DFL) {
- sa.sa_flags = 0;
- sigemptyset (&sa.sa_mask);
- sa.sa_handler = segv_redirect;
- sigaction (SIGSEGV, &sa, NULL);
- sigaction (SIGBUS, &sa, NULL);
- sigaction (SIGFPE, &sa, NULL);
-
- sa.sa_handler = SIG_IGN;
- sigaction (SIGXFSZ, &sa, NULL);
- gnome_segv_handler = osa.sa_handler;
- g_static_mutex_lock (&segv_mutex);
- }
-
/* init ? */
mail_config_init ();
mail_msg_init ();