Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Evergreen:11.4
gnome-panel.import4835
gnome-panel-no-bonobo-in-process.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File gnome-panel-no-bonobo-in-process.patch of Package gnome-panel.import4835
commit cc7f3e7cac8dd9da5e8e48eac6ef9e992c557812 Author: Vincent Untz <vuntz@gnome.org> Date: Thu Feb 17 12:47:25 2011 +0100 bonobo: Remove API to build bonobo applet as shared library Yes, it's bad, it breaks API and ABI. In a stable branch. But it's the bonobo compatibility module. And it's a rather important fix. We can't have bonobo applets as shared libraries since both bonobo applets and dbus applets are sharing the PanelApplet type name, and they will conflict in the same process. Since we know we want to allow dbus in-process applets, it means we have to disallow bonobo in-process applets. Hence this change. diff --git a/bonobo/libpanel-applet/panel-applet.c b/bonobo/libpanel-applet/panel-applet.c index 9fe7e9b..9644d66 100644 --- a/bonobo/libpanel-applet/panel-applet.c +++ b/bonobo/libpanel-applet/panel-applet.c @@ -40,7 +40,6 @@ #include <bonobo/bonobo-types.h> #include <bonobo/bonobo-property-bag.h> #include <bonobo/bonobo-item-handler.h> -#include <bonobo/bonobo-shlib-factory.h> #include <bonobo/bonobo-property-bag-client.h> #include <gconf/gconf.h> #include <gconf/gconf-client.h> @@ -1811,54 +1810,6 @@ panel_applet_factory_main (const gchar *iid, return panel_applet_factory_main_closure (iid, applet_type, closure); } -Bonobo_Unknown -panel_applet_shlib_factory_closure (const char *iid, - GType applet_type, - PortableServer_POA poa, - gpointer impl_ptr, - GClosure *closure, - CORBA_Environment *ev) -{ - BonoboShlibFactory *factory; - - g_return_val_if_fail (iid != NULL, CORBA_OBJECT_NIL); - g_return_val_if_fail (closure != NULL, CORBA_OBJECT_NIL); - - g_assert (g_type_is_a (applet_type, PANEL_TYPE_APPLET)); - - bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR); - bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); - - closure = bonobo_closure_store (closure, panel_applet_marshal_BOOLEAN__STRING); - - factory = bonobo_shlib_factory_new_closure ( - iid, poa, impl_ptr, - g_cclosure_new (G_CALLBACK (panel_applet_factory_callback), - panel_applet_callback_data_new (applet_type, closure), - (GClosureNotify) panel_applet_callback_data_free)); - - return CORBA_Object_duplicate (BONOBO_OBJREF (factory), ev); -} - -Bonobo_Unknown -panel_applet_shlib_factory (const char *iid, - GType applet_type, - PortableServer_POA poa, - gpointer impl_ptr, - PanelAppletFactoryCallback callback, - gpointer user_data, - CORBA_Environment *ev) -{ - g_return_val_if_fail (iid != NULL, CORBA_OBJECT_NIL); - g_return_val_if_fail (callback != NULL, CORBA_OBJECT_NIL); - - return panel_applet_shlib_factory_closure ( - iid, applet_type, poa, impl_ptr, - g_cclosure_new (G_CALLBACK (callback), - user_data, NULL), - ev); -} - void panel_applet_set_background_widget (PanelApplet *applet, GtkWidget *widget) diff --git a/bonobo/libpanel-applet/panel-applet.h b/bonobo/libpanel-applet/panel-applet.h index 7cd65b9..0494019 100644 --- a/bonobo/libpanel-applet/panel-applet.h +++ b/bonobo/libpanel-applet/panel-applet.h @@ -157,21 +157,6 @@ int panel_applet_factory_main_closure (const gchar *iid, GType applet_type, GClosure *closure); -Bonobo_Unknown panel_applet_shlib_factory (const char *iid, - GType applet_type, - PortableServer_POA poa, - gpointer impl_ptr, - PanelAppletFactoryCallback callback, - gpointer user_data, - CORBA_Environment *ev); - -Bonobo_Unknown panel_applet_shlib_factory_closure (const char *iid, - GType applet_type, - PortableServer_POA poa, - gpointer impl_ptr, - GClosure *closure, - CORBA_Environment *ev); - /* * These macros are getting a bit unwieldy. * @@ -232,23 +217,6 @@ int main (int argc, char *argv []) \ return retval; \ } -#define PANEL_APPLET_BONOBO_SHLIB_FACTORY(iid, type, descr, callback, data) \ -static Bonobo_Unknown \ -__panel_applet_shlib_factory (PortableServer_POA poa, \ - const char *oafiid, \ - gpointer impl_ptr, \ - CORBA_Environment *ev) \ -{ \ - _PANEL_APPLET_SETUP_GETTEXT (FALSE); \ - return panel_applet_shlib_factory ((iid), (type), poa, impl_ptr, \ - (callback), (data), ev); \ -} \ -static BonoboActivationPluginObject plugin_list[] = { \ - { (iid), __panel_applet_shlib_factory }, \ - { NULL } \ -}; \ -const BonoboActivationPlugin Bonobo_Plugin_info = { plugin_list, (descr) }; - G_END_DECLS #endif /* __PANEL_APPLET_H__ */
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor