2005-02-03 [colin] 1.0.0cvs26
authorColin Leroy <colin@colino.net>
Thu, 3 Feb 2005 10:12:34 +0000 (10:12 +0000)
committerColin Leroy <colin@colino.net>
Thu, 3 Feb 2005 10:12:34 +0000 (10:12 +0000)
* src/common/plugin.c
Don't load GTK2 plugins at all. This solves
the plugins problem when switching between
GTK1 and GTK2 version.

ChangeLog.claws
PATCHSETS
configure.ac
src/common/plugin.c

index 1f86e35..7405db5 100644 (file)
@@ -1,3 +1,10 @@
+2005-02-03 [colin]     1.0.0cvs26
+
+       * src/common/plugin.c
+               Don't load GTK2 plugins at all. This solves
+               the plugins problem when switching between
+               GTK1 and GTK2 version.
+
 2005-02-02 [colin]     1.0.0cvs25
 
        * src/messageview.c
index 260a9b1..89fe762 100644 (file)
--- a/PATCHSETS
+++ b/PATCHSETS
 ( cvs diff -u -r 1.258 -r 1.259 src/folderview.c; ) > 1.0.0cvs23.patchset
 ( cvs diff -u -r 1.471 -r 1.472 src/compose.c; ) > 1.0.0cvs24.patchset
 ( cvs diff -u -r 1.130 -r 1.131 src/messageview.c; ) > 1.0.0cvs25.patchset
+( cvs diff -u -r 1.14 -r 1.15 src/common/plugin.c; ) > 1.0.0cvs26.patchset
index f6a1b66..329e377 100644 (file)
@@ -11,7 +11,7 @@ MINOR_VERSION=0
 MICRO_VERSION=0
 INTERFACE_AGE=0
 BINARY_AGE=0
-EXTRA_VERSION=25
+EXTRA_VERSION=26
 EXTRA_RELEASE=
 
 if test \( $EXTRA_VERSION -eq 0 \) -o \( "x$EXTRA_RELEASE" != "x" \); then
index 69159c6..4bb744a 100644 (file)
@@ -92,7 +92,8 @@ gint plugin_load(const gchar *filename, gchar **error)
 {
        Plugin *plugin;
        gint (*plugin_init) (gchar **error);
-       gpointer plugin_name, plugin_desc, plugin_type;
+       gpointer plugin_name, plugin_desc;
+       const gchar *(*plugin_type)(void);
        gint ok;
 
        g_return_val_if_fail(filename != NULL, -1);
@@ -113,13 +114,20 @@ gint plugin_load(const gchar *filename, gchar **error)
 
        if (!g_module_symbol(plugin->module, "plugin_name", &plugin_name) ||
            !g_module_symbol(plugin->module, "plugin_desc", &plugin_desc) ||
-           !g_module_symbol(plugin->module, "plugin_type", &plugin_type) ||
+           !g_module_symbol(plugin->module, "plugin_type", (gpointer *) &plugin_type) ||
            !g_module_symbol(plugin->module, "plugin_init", (gpointer *) &plugin_init)) {
                *error = g_strdup(g_module_error());
                g_module_close(plugin->module);
                g_free(plugin);
                return -1;
        }
+       
+       if (!strcmp(plugin_type(), "GTK2")) {
+               *error = g_strdup(_("This module is for Sylpheed-Claws GTK2."));
+               g_module_close(plugin->module);
+               g_free(plugin);
+               return -1;
+       }
 
        if ((ok = plugin_init(error)) < 0) {
                g_module_close(plugin->module);