rendered paste bodyIndex: ChangeLog===================================================================RCS file: /cvs/gnome/gedit/ChangeLog,vretrieving revision 1.591diff -u -r1.591 ChangeLog--- ChangeLog 3 Jan 2006 17:19:09 -0000 1.591+++ ChangeLog 3 Jan 2006 18:14:39 -0000@@ -1,3 +1,12 @@+2006-01-03 Jesse van den Kieboom <jesse@icecrew.nl>++ * gedit/gedit-plugins-engine.[ch]:+ (gedit_plugins_engine_garbage_collect): new function, ensures garbage+ collection for plugins++ * gedit/gedit-window.c: add garbage collection on destroy+ and tab_removed+ 2006-01-03 Paolo Maggi <paolo@gnome.org> Fixes drag&drop of files from file-rollerIndex: gedit/gedit-window.c===================================================================RCS file: /cvs/gnome/gedit/gedit/gedit-window.c,vretrieving revision 1.10diff -u -r1.10 gedit-window.c--- gedit/gedit-window.c 3 Jan 2006 17:19:10 -0000 1.10+++ gedit/gedit-window.c 3 Jan 2006 18:14:40 -0000@@ -165,6 +165,8 @@ g_object_unref (window->priv->recent_view_uim); window->priv->recent_view_uim = NULL; }++ gedit_plugins_engine_garbage_collect(); GTK_OBJECT_CLASS (gedit_window_parent_class)->destroy (object); }@@ -234,11 +236,20 @@ } static void+gedit_window_tab_removed (GeditWindow *window,+ GeditTab *tab)+{+ gedit_plugins_engine_garbage_collect();+}++static void gedit_window_class_init (GeditWindowClass *klass) { GObjectClass *object_class = G_OBJECT_CLASS (klass); GtkObjectClass *gobject_class = GTK_OBJECT_CLASS (klass); GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);++ klass->tab_removed = gedit_window_tab_removed; object_class->finalize = gedit_window_finalize; object_class->get_property = gedit_window_get_property;Index: gedit/gedit-plugins-engine.c===================================================================RCS file: /cvs/gnome/gedit/gedit/gedit-plugins-engine.c,vretrieving revision 1.26diff -u -r1.26 gedit-plugins-engine.c--- gedit/gedit-plugins-engine.c 12 Dec 2005 17:27:55 -0000 1.26+++ gedit/gedit-plugins-engine.c 3 Jan 2006 18:14:40 -0000@@ -387,6 +387,15 @@ gedit_plugins_engine_gconf_client = NULL; }+void+gedit_plugins_engine_garbage_collect (void)+{+ #ifdef ENABLE_PYTHON+ while (PyGC_Collect ())+ ;+ #endif+}+ const GList * gedit_plugins_engine_get_plugins_list (void) {Index: gedit/gedit-plugins-engine.h===================================================================RCS file: /cvs/gnome/gedit/gedit/gedit-plugins-engine.h,vretrieving revision 1.9diff -u -r1.9 gedit-plugins-engine.h--- gedit/gedit-plugins-engine.h 12 Dec 2005 17:27:55 -0000 1.9+++ gedit/gedit-plugins-engine.h 3 Jan 2006 18:14:40 -0000@@ -39,6 +39,8 @@ gboolean gedit_plugins_engine_init (void); void gedit_plugins_engine_shutdown (void);+void gedit_plugins_engine_garbage_collect (void);+ const GList *gedit_plugins_engine_get_plugins_list (void); gboolean gedit_plugins_engine_activate_plugin (GeditPluginInfo *info);