char *progname, **gtkargvstart;
int ngtkargs;
guint32 input_event_time; /* Timestamp of the most recent input event. */
+ int reconfiguring;
};
struct draw_ctx {
inst->exited = TRUE;
if (inst->cfg.close_on_exit == FORCE_ON ||
(inst->cfg.close_on_exit == AUTO && exitcode == 0))
- exit(0); /* just go. */
+ gtk_main_quit(); /* just go */
if (inst->ldisc) {
ldisc_free(inst->ldisc);
inst->ldisc = NULL;
assert(lenof(ww) == NCFGCOLOURS);
+ if (inst->reconfiguring)
+ return;
+ else
+ inst->reconfiguring = TRUE;
+
cfg2 = inst->cfg; /* structure copy */
if (do_config_box(title, &cfg2, 1,
gtk_widget_queue_draw(inst->area);
}
sfree(title);
+ inst->reconfiguring = FALSE;
}
void fork_and_exec_self(struct gui_data *inst, int fd_to_close, ...)