[geany/geany] 03e5bb: Fix crash if plugin manager is opened more than once (#1564)
Colomban Wendling
git-noreply at xxxxx
Fri Jul 28 04:15:55 UTC 2017
Branch: refs/heads/master
Author: Colomban Wendling <lists.ban at herbesfolles.org>
Committer: Matthew Brush <mbrush at codebrainz.ca>
Date: Fri, 28 Jul 2017 04:15:55 UTC
Commit: 03e5bb9facd4e35ac0757781e054c7389362d129
https://github.com/geany/geany/commit/03e5bb9facd4e35ac0757781e054c7389362d129
Log Message:
-----------
Fix crash if plugin manager is opened more than once (#1564)
Do not allow more than one plugin manager dialog at a time. It doesn't
make sense and the code is not fully re-entrant and leads to a crash
toggling plugins in both dialogs.
Fixes #1563.
Modified Paths:
--------------
src/plugins.c
Modified: src/plugins.c
7 lines changed, 7 insertions(+), 0 deletions(-)
===================================================================
@@ -1902,6 +1902,7 @@ static void pm_dialog_response(GtkDialog *dialog, gint response, gpointer user_d
plugin_list = NULL;
}
gtk_widget_destroy(GTK_WIDGET(dialog));
+ pm_widgets.dialog = NULL;
configuration_save();
break;
@@ -1919,6 +1920,12 @@ static void pm_show_dialog(GtkMenuItem *menuitem, gpointer user_data)
{
GtkWidget *vbox, *vbox2, *swin, *label, *menu_item, *filter_entry;
+ if (pm_widgets.dialog != NULL)
+ {
+ gtk_window_present(GTK_WINDOW(pm_widgets.dialog));
+ return;
+ }
+
/* before showing the dialog, we need to create the list of available plugins */
load_all_plugins();
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Commits
mailing list