DBusError dbus_error;
DBusHandleMessageFunction filter_func = check_microb_started;
+ dbus_error_init(&dbus_error);
+
dbus_connection_remove_filter(conn, filter_func, NULL);
dbus_bus_remove_match(conn,
"type='signal',interface='org.freedesktop.DBus',member='NameOwnerChanged',arg0='com.nokia.osso_browser'",
int launch_microb_open_window(struct swb_context *ctx, char *uri,
int flags) {
- DBusGProxy *g_proxy;
+ static DBusGProxy *g_proxy = NULL;
GError *gerror = NULL;
- g_proxy = dbus_g_proxy_new_for_name(ctx->session_bus,
- "com.nokia.osso_browser",
- "/com/nokia/osso_browser/request",
- "com.nokia.osso_browser");
if (!g_proxy) {
- log_msg("Couldn't get a com.nokia.osso_browser proxy\n");
- return 0;
+ g_proxy = dbus_g_proxy_new_for_name(ctx->session_bus,
+ "com.nokia.osso_browser",
+ "/com/nokia/osso_browser/request",
+ "com.nokia.osso_browser");
+ if (!g_proxy) {
+ log_msg("Couldn't get a com.nokia.osso_browser proxy\n");
+ return 0;
+ }
}
if (!strcmp(uri, "new_window")) {
uri = "about:blank";
}
}
- if (!dbus_g_proxy_call(g_proxy, "load_url",
+ if (!dbus_g_proxy_call(g_proxy, "open_new_window",
&gerror,
G_TYPE_STRING, uri,
G_TYPE_INVALID,
return 0;
}
- g_object_unref(g_proxy);
return 1;
}