static void sig_exit(void)
{
- g_main_quit(main_loop);
+ quitting = TRUE;
}
/* redraw irssi's screen.. */
static void textui_deinit(void)
{
- quitting = TRUE;
signal(SIGINT, SIG_DFL);
screen_refresh_freeze();
textdomain(PACKAGE);
#endif
+ quitting = FALSE;
+
textui_init();
args_execute(argc, argv);
silc_init_finish();
textui_finish_init();
main_loop = g_main_new(TRUE);
- g_main_run(main_loop);
+
+ while (!quitting) {
+ g_main_iteration(TRUE);
+ screen_check_resizes();
+ }
+
g_main_destroy(main_loop);
textui_deinit();