static GMainLoop *main_loop;
int quitting;
-int quit_signalled;
-int protocols_deinit;
static int display_firsttimer = FALSE;
-/* Protocol exit signal to tell protocol has gone away. Safe to quit. */
-
-static void sig_protocol_exit(void)
-{
- protocols_deinit = TRUE;
- if (!quitting && quit_signalled)
- quitting = TRUE;
-}
-
static void sig_exit(void)
{
- quit_signalled = TRUE;
-
- /* If protocol hasn't finished yet, wait untill it sends "chat protocol
- deinit" signal. */
- if (!protocols_deinit)
- return;
quitting = TRUE;
}
theme_register(gui_text_formats);
signal_add_last("gui exit", (SIGNAL_FUNC) sig_exit);
- signal_add_last("chat protocol deinit",
- (SIGNAL_FUNC) sig_protocol_exit);
}
static void textui_finish_init(void)
{
quitting = FALSE;
- quit_signalled = FALSE;
- protocols_deinit = FALSE;
if (dummy)
term_dummy_init();
dirty_check(); /* one last time to print any quit messages */
signal_remove("gui exit", (SIGNAL_FUNC) sig_exit);
- signal_remove("chat protocol deinit", (SIGNAL_FUNC) sig_protocol_exit);
if (dummy)
term_dummy_deinit();
dummy = FALSE;
quitting = FALSE;
- quit_signalled = FALSE;
- protocols_deinit = FALSE;
core_init_paths(argc, argv);
check_files();