diff options
author | Benjamin Otte <otte@redhat.com> | 2010-11-09 07:19:19 -0500 |
---|---|---|
committer | Benjamin Otte <otte@redhat.com> | 2010-11-09 21:13:04 -0500 |
commit | fb94859e84c0b7859a0a5425d461b18e67ea9ac7 (patch) | |
tree | 20b006ad58c8e66bacb2f2739e3397ef0a3b1c18 /gio/giomodule.c | |
parent | 9f02ee790b03b4c9e73490734ddb4740219b1d36 (diff) |
API: Reinstate "gio-desktop-app-info-lookup" extension point
Removing an extension point is an API and ABI break. In particular, it
causes (older) gvfs versions to fail loading with a linkage error from
ld which in turn makes the desktop unusable.
So this reinstate the extension point and API provided by it, but
deprecates and does not use it. So no functionality is changed.
This reverts parts of commit 9b262f1c5fe5a6fd879f17cd7b80d8c54e33d80c.
Complaints-Also-To: Ryan Lortie <desrt@desrt.ca>
Diffstat (limited to 'gio/giomodule.c')
-rw-r--r-- | gio/giomodule.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/gio/giomodule.c b/gio/giomodule.c index 86bf25ed2..d1318933f 100644 --- a/gio/giomodule.c +++ b/gio/giomodule.c @@ -36,14 +36,17 @@ #include "gsocks4aproxy.h" #include "gsocks5proxy.h" #include "gvfs.h" -#ifdef G_OS_UNIX -#include "gdesktopappinfo.h" -#endif #ifdef G_OS_WIN32 #include "gregistrysettingsbackend.h" #endif #include <glib/gstdio.h> +#undef G_DISABLE_DEPRECATED + +#ifdef G_OS_UNIX +#include "gdesktopappinfo.h" +#endif + /** * SECTION:giomodule * @short_description: Loadable GIO Modules @@ -523,6 +526,13 @@ _g_io_modules_ensure_extension_points_registered (void) { registered_extensions = TRUE; +#ifdef G_OS_UNIX +#if !GLIB_CHECK_VERSION (3, 0, 0) + ep = g_io_extension_point_register (G_DESKTOP_APP_INFO_LOOKUP_EXTENSION_POINT_NAME); + g_io_extension_point_set_required_type (ep, G_TYPE_DESKTOP_APP_INFO_LOOKUP); +#endif +#endif + ep = g_io_extension_point_register (G_LOCAL_DIRECTORY_MONITOR_EXTENSION_POINT_NAME); g_io_extension_point_set_required_type (ep, G_TYPE_LOCAL_DIRECTORY_MONITOR); |