From: Steven Luo Date: Sun, 7 Aug 2011 00:22:59 +0000 (-0700) Subject: Also register for path / on D-Bus X-Git-Tag: fremantle-package-3.3-2fremantle2~1 X-Git-Url: http://git.maemo.org/git/?p=browser-switch;a=commitdiff_plain;h=534cd85acbc5979b385f75e08e33724649825043;hp=e1cb1fa0f7d5d4bdee2fc0bad4ccc5236776c8e5 Also register for path / on D-Bus This lets us work with broken applications like the Fremantle xterm which direct their D-Bus requests to this path instead of /com/nokia/osso_browser like they should. Thanks to t.m.o users laasonen for reporting and Anzah for providing diagnostic output leading to a fix. --- diff --git a/main.c b/main.c index 2e19b84..c148bac 100644 --- a/main.c +++ b/main.c @@ -81,8 +81,9 @@ static void read_config(int signalnum) { } int main() { - OssoBrowser *obj_osso_browser, *obj_osso_browser_req; - OssoBrowser *obj_osso_browser_sys, *obj_osso_browser_sys_req; + OssoBrowser *obj_osso_browser, *obj_osso_browser_sys; + OssoBrowser *obj_osso_browser_req, *obj_osso_browser_sys_req; + OssoBrowser *obj_osso_browser_root, *obj_osso_browser_sys_root; GMainLoop *mainloop; GError *error = NULL; int reqname_result; @@ -169,19 +170,25 @@ int main() { /* Register ourselves to handle the osso_browser D-Bus methods */ obj_osso_browser = g_object_new(OSSO_BROWSER_TYPE, NULL); obj_osso_browser_req = g_object_new(OSSO_BROWSER_TYPE, NULL); + obj_osso_browser_root = g_object_new(OSSO_BROWSER_TYPE, NULL); obj_osso_browser_sys = g_object_new(OSSO_BROWSER_TYPE, NULL); obj_osso_browser_sys_req = g_object_new(OSSO_BROWSER_TYPE, NULL); + obj_osso_browser_sys_root = g_object_new(OSSO_BROWSER_TYPE, NULL); dbus_g_connection_register_g_object(ctx.session_bus, "/com/nokia/osso_browser", G_OBJECT(obj_osso_browser)); dbus_g_connection_register_g_object(ctx.session_bus, "/com/nokia/osso_browser/request", G_OBJECT(obj_osso_browser_req)); + dbus_g_connection_register_g_object(ctx.session_bus, + "/", G_OBJECT(obj_osso_browser_root)); dbus_g_connection_register_g_object(ctx.system_bus, "/com/nokia/osso_browser", G_OBJECT(obj_osso_browser_sys)); dbus_g_connection_register_g_object(ctx.system_bus, "/com/nokia/osso_browser/request", G_OBJECT(obj_osso_browser_sys_req)); + dbus_g_connection_register_g_object(ctx.system_bus, + "/", G_OBJECT(obj_osso_browser_sys_root)); mainloop = g_main_loop_new(NULL, FALSE); log_msg("Starting main loop\n");