/* * main.c: The core of the mail component * * Author: * Miguel de Icaza (miguel@ximian.com) * * (C) 2000 Ximian, Inc. */ #ifdef HAVE_CONFIG_H #include #endif #include #include #include #include #include #include #include #include #ifdef GTKHTML_HAVE_GCONF #include #endif #include #include #include #include "e-util/e-passwords.h" #include "component-factory.h" #include "composer/evolution-composer.h" #include "mail.h" #include "mail-mt.h" /*#define DO_MCHECK*/ #ifdef DO_MCHECK static int blowup(int status) { switch(status) { case 1: printf("Double free failure\n"); break; case 2: printf("Memory clobbered before block\n"); break; case 3: printf("Memory clobbered after block\n"); break; } abort(); return status; } #endif /* 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 void segv_redirect (int sig) { if (pthread_self () == mail_gui_thread) gnome_segv_handler (sig); else { pthread_kill (mail_gui_thread, sig); pthread_exit (NULL); } } int main (int argc, char *argv []) { CORBA_ORB orb; struct sigaction sa, osa; #ifdef DO_MCHECK /* used to make elfence work */ #if 0 free (malloc (10)); #else /*mtrace();*/ mcheck(blowup); #endif #endif bindtextdomain (PACKAGE, EVOLUTION_LOCALEDIR); textdomain (PACKAGE); g_thread_init (NULL); gnome_init_with_popt_table ("evolution-mail-component", VERSION, argc, argv, oaf_popt_options, 0, NULL); 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); gnome_segv_handler = osa.sa_handler; } orb = oaf_init (argc, argv); if (bonobo_init (orb, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL) == FALSE) { g_error ("Mail component could not initialize Bonobo.\n" "If there was a warning message about the " "RootPOA, it probably means\nyou compiled " "Bonobo against GOAD instead of OAF."); } #ifdef GTKHTML_HAVE_GCONF gconf_init (argc, argv, NULL); #endif glade_gnome_init (); gnome_vfs_init (); e_cursors_init (); e_passwords_init ("Mail"); mail_config_init (); mail_msg_init (); component_factory_init (); evolution_composer_factory_init (composer_send_cb, composer_postpone_cb); if (gdk_threads_mutex) { g_mutex_free (gdk_threads_mutex); gdk_threads_mutex = NULL; } GDK_THREADS_ENTER (); bonobo_main (); mail_msg_cleanup(); GDK_THREADS_LEAVE (); mail_config_write_on_exit (); e_passwords_shutdown (); return 0; } n4/files/y18n-3.2.2'>dependabot/npm_and_yarn/devel/electron4/files/y18n-3.2.2 FreeBSD GNOME current development ports (https://github.com/freebsd/freebsd-ports-gnome)
aboutsummaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* Switch default python_CMD used by shebangfix to ${PYTHON_CMD} for portsantoine2015-07-301-1/+0
* - Swich default pastebin to a working oneamdmi32015-06-252-1/+12
* Fix runtime errorantoine2014-11-101-0/+2
* misc/pastebinit: Upgrade version 1.3.1 => 1.4.1marino2014-11-092-7/+5
* - Clarify LICENSEamdmi32014-10-171-3/+3
* Hand back my ports to the pool.eadler2014-09-241-1/+1
* Fix runtimeantoine2014-06-141-1/+5
* Modernize my portseadler2014-03-131-1/+1
* Convert pastebinit to have STAGEDIR support.eadler2013-09-261-3/+2
* Add NO_STAGE all over the place in preparation for the staging support (cat: ...bapt2013-09-211-0/+1
* Clean up my ports (and a couple of ports@ owned ones):eadler2013-03-091-4/+4
* Trim the headers in the ports I maintain.eadler2012-10-061-5/+0
* - Fix typos (LICENSE is correct form inside bsd.licenses.mk).az2012-10-031-1/+1
* - Update to 1.3.1eadler2012-09-042-4/+10
* Upgrade to OptionsNGeadler2012-06-211-5/+7
* Update to 1.3eadler2012-02-232-10/+4
* - change the email address I use to maintain portseadler2011-08-221-1/+1
* - change the email address I use to maintain portseadler2011-08-221-1/+1
* Update to 1.2jlaffaye2011-06-273-8/+22