From: Michael Schwendt Date: Mon, 24 Dec 2012 13:24:27 +0000 (+0100) Subject: Avoids a double-free X-Git-Tag: v1.3~30 X-Git-Url: http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=commitdiff_plain;h=2a564f2db255af2ef85174a81bfba3c084b88f4f Avoids a double-free Avoids a double-free due to a boolean that would be retrieved from a deleted/freed structure. Fix #361. Signed-off-by: Klaus Ethgen --- diff --git a/src/ui_utildlg.c b/src/ui_utildlg.c index c4bfaaf9..743d0a81 100644 --- a/src/ui_utildlg.c +++ b/src/ui_utildlg.c @@ -86,11 +86,12 @@ void generic_dialog_attach_default(GenericDialog *gd, GtkWidget *widget) static gboolean generic_dialog_key_press_cb(GtkWidget *widget, GdkEventKey *event, gpointer data) { GenericDialog *gd = data; + gboolean auto_close = gd->auto_close; if (event->keyval == GDK_KEY_Escape) { if (gd->cancel_cb) gd->cancel_cb(gd, gd->data); - else if (gd->auto_close) generic_dialog_click_cb(widget, data); + else if (auto_close) generic_dialog_click_cb(widget, data); return TRUE; } return FALSE;