Treat failure to acquire osso_browser name on system bus as non-fatal
authorSteven Luo <steven+maemo@steven676.net>
Thu, 26 Aug 2010 11:33:21 +0000 (04:33 -0700)
committerSteven Luo <steven+maemo@steven676.net>
Thu, 26 Aug 2010 12:03:06 +0000 (05:03 -0700)
This makes testing on regular Linux systems (where the system bus is
restricted to privileged processes) easier.

dbus-server-bindings.c

index 000bed9..dfdc980 100644 (file)
@@ -150,6 +150,7 @@ void dbus_request_osso_browser_name(struct swb_context *ctx) {
        if (!ctx || !ctx->dbus_proxy || !ctx->dbus_system_proxy)
                return;
 
+       /* Acquire the com.nokia.osso_browser name on the session bus */
        if (!dbus_g_proxy_call(ctx->dbus_proxy, "RequestName", &error,
                               G_TYPE_STRING, "com.nokia.osso_browser",
                               G_TYPE_UINT, DBUS_NAME_FLAG_REPLACE_EXISTING|DBUS_NAME_FLAG_DO_NOT_QUEUE,
@@ -164,6 +165,9 @@ void dbus_request_osso_browser_name(struct swb_context *ctx) {
                exit(1);
        }
 
+       /* Try to acquire the com.nokia.osso_browser name on the system bus
+          Treat a failure as non-fatal, which makes testing on desktop systems
+          easier */
        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,
@@ -171,11 +175,10 @@ void dbus_request_osso_browser_name(struct swb_context *ctx) {
                               G_TYPE_UINT, &result,
                               G_TYPE_INVALID)) {
                log_msg("Couldn't acquire name com.nokia.osso_browser on system bus\n");
-               exit(1);
+               g_error_free(error);
        }
        if (result != DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER) {  
                log_msg("Couldn't acquire name com.nokia.osso_browser on system bus\n");
-               exit(1);
        }
 }