X-Git-Url: http://git.maemo.org/git/?p=browser-switch;a=blobdiff_plain;f=dbus-server-bindings.c;h=000bed92e34e6c86b8dda7ce7d3a9579f973f1e0;hp=f20a6901fa79f525196f42d3e94b90233545f9ba;hb=dbcb6cd8e6d1a12daa21a6aa17738adf026cf069;hpb=e59a225f28a6db6e931acb52a4a0ae7a71eaf0f7 diff --git a/dbus-server-bindings.c b/dbus-server-bindings.c index f20a690..000bed9 100644 --- a/dbus-server-bindings.c +++ b/dbus-server-bindings.c @@ -147,7 +147,7 @@ void dbus_request_osso_browser_name(struct swb_context *ctx) { GError *error = NULL; guint result; - if (!ctx || !ctx->dbus_proxy) + if (!ctx || !ctx->dbus_proxy || !ctx->dbus_system_proxy) return; if (!dbus_g_proxy_call(ctx->dbus_proxy, "RequestName", &error, @@ -163,6 +163,20 @@ void dbus_request_osso_browser_name(struct swb_context *ctx) { log_msg("Couldn't acquire name com.nokia.osso_browser\n"); exit(1); } + + if (!dbus_g_proxy_call(ctx->dbus_system_proxy, "RequestName", &error, + G_TYPE_STRING, "com.nokia.osso_browser", + G_TYPE_UINT, DBUS_NAME_FLAG_REPLACE_EXISTING|DBUS_NAME_FLAG_DO_NOT_QUEUE, + G_TYPE_INVALID, + G_TYPE_UINT, &result, + G_TYPE_INVALID)) { + log_msg("Couldn't acquire name com.nokia.osso_browser on system bus\n"); + exit(1); + } + if (result != DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER) { + log_msg("Couldn't acquire name com.nokia.osso_browser on system bus\n"); + exit(1); + } } /* Release the name com.nokia.osso_browser on the D-Bus session bus */ @@ -170,7 +184,7 @@ void dbus_release_osso_browser_name(struct swb_context *ctx) { GError *error = NULL; guint result; - if (!ctx || !ctx->dbus_proxy) + if (!ctx || !ctx->dbus_proxy || !ctx->dbus_system_proxy) return; dbus_g_proxy_call(ctx->dbus_proxy, "ReleaseName", &error, @@ -178,4 +192,9 @@ void dbus_release_osso_browser_name(struct swb_context *ctx) { G_TYPE_INVALID, G_TYPE_UINT, &result, G_TYPE_INVALID); + dbus_g_proxy_call(ctx->dbus_system_proxy, "ReleaseName", &error, + G_TYPE_STRING, "com.nokia.osso_browser", + G_TYPE_INVALID, + G_TYPE_UINT, &result, + G_TYPE_INVALID); }