From: Owen Dunn Date: Thu, 10 Mar 2005 10:07:27 +0000 (+0000) Subject: Protect against multiple Change Settings dialogues. We should probably also X-Git-Tag: 0.58~57 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=c7e71fe2ecbbe250e8587cb534c60c134ddf822e;p=PuTTY.git Protect against multiple Change Settings dialogues. We should probably also arrange to switch to an existing Change Settings if the user selects the menu item and we already have a Change Settings. [originally from svn r5475] --- diff --git a/unix/gtkwin.c b/unix/gtkwin.c index 93cc68e9..91c13054 100644 --- a/unix/gtkwin.c +++ b/unix/gtkwin.c @@ -95,6 +95,7 @@ struct gui_data { char *progname, **gtkargvstart; int ngtkargs; guint32 input_event_time; /* Timestamp of the most recent input event. */ + int reconfiguring; }; struct draw_ctx { @@ -2878,6 +2879,11 @@ void change_settings_menuitem(GtkMenuItem *item, gpointer data) assert(lenof(ww) == NCFGCOLOURS); + if (inst->reconfiguring) + return; + else + inst->reconfiguring = TRUE; + cfg2 = inst->cfg; /* structure copy */ if (do_config_box(title, &cfg2, 1, @@ -2995,6 +3001,7 @@ void change_settings_menuitem(GtkMenuItem *item, gpointer data) gtk_widget_queue_draw(inst->area); } sfree(title); + inst->reconfiguring = FALSE; } void fork_and_exec_self(struct gui_data *inst, int fd_to_close, ...)