/*
- * Copyright (C) 2009-2010 Andy Spencer <andy753421@gmail.com>
+ * Copyright (C) 2009-2011 Andy Spencer <andy753421@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
static void grits_plugins_free_store(GritsPluginStore *store)
{
g_object_unref(store->plugin);
- /* Flush any possible callbacks before
- * unloading the plugin code */
- while (gtk_events_pending())
- gtk_main_iteration();
- g_module_close(store->module);
+ //g_module_close(store->module);
g_free(store->name);
g_free(store);
}
g_debug("GritsPlugins: free");
for (GList *cur = plugins->plugins; cur; cur = cur->next) {
GritsPluginStore *store = cur->data;
- g_debug("GritsPlugin: freeing %s refs=%d->%d", store->name,
+ g_debug("GritsPlugins: freeing %s refs=%d->%d", store->name,
G_OBJECT(store->plugin)->ref_count,
G_OBJECT(store->plugin)->ref_count-1);
grits_plugins_free_store(store);
for (GList *cur = plugins->plugins; cur; cur = cur->next) {
GritsPluginStore *store = cur->data;
if (g_str_equal(store->name, name)) {
- grits_plugins_free_store(store);
plugins->plugins = g_list_delete_link(plugins->plugins, cur);
+ grits_plugins_free_store(store);
}
}
return FALSE;