diff --git a/src/ipc3270c/linux/main.c b/src/ipc3270c/linux/main.c index e92eb0e..f7c82c8 100644 --- a/src/ipc3270c/linux/main.c +++ b/src/ipc3270c/linux/main.c @@ -61,7 +61,8 @@ guint result; char session_id = 0; char id = 'a'; - const gchar * name = "pw3270"; + gchar * ptr; + const gchar * name = v3270_get_session_name(terminal); connection = dbus_g_bus_get_private(DBUS_BUS_SESSION, g_main_context_default(), &error); if(error) @@ -92,6 +93,8 @@ gboolean has_owner = FALSE; service_name = g_strdup_printf("br.com.bb.%s.%c",name,(int) id); + for(ptr=service_name;*ptr;ptr++) + *ptr = g_ascii_tolower(*ptr); org_freedesktop_DBus_name_has_owner(proxy, service_name, &has_owner, NULL); @@ -132,14 +135,11 @@ if(session_id) { - g_autofree gchar * path = g_strdup_printf("/br/com/bb/%s",name); - g_autofree gchar * session = g_strdup_printf("%s:%c",name,g_ascii_toupper(session_id)); - // pw3270_set_session_name(window,session); - v3270_set_session_name(terminal,session); + g_autofree gchar * session = g_strdup_printf("%s:%c",name,g_ascii_toupper(session_id)); + static const gchar * path = "/br/com/bb/pw3270"; g_message("DBUS service path is %s, session name is %s",path,session); - pw3270_dbus_register_object(connection,proxy,PW3270_TYPE_DBUS,&dbus_glib_pw3270_dbus_object_info,path); } diff --git a/src/ipc3270c/windows/main.c b/src/ipc3270c/windows/main.c index d5e5fc2..3c229d0 100644 --- a/src/ipc3270c/windows/main.c +++ b/src/ipc3270c/windows/main.c @@ -598,7 +598,7 @@ LIB3270_EXPORT int pw3270_plugin_start(GtkWidget *window, GtkWidget *terminal) { char id; - const gchar * name = gtk_widget_get_name(window); + const gchar * name = v3270_get_session_name(terminal); for(id='A';id < 'Z';id++) { diff --git a/src/testprograms/ipc3270c.c b/src/testprograms/ipc3270c.c index e67c6a6..cf5d454 100644 --- a/src/testprograms/ipc3270c.c +++ b/src/testprograms/ipc3270c.c @@ -130,6 +130,7 @@ GModule * module = NULL; gtk_widget_set_name(window,session_name); + v3270_set_session_name(terminal, session_name); // Setup tabs gtk_notebook_append_page(GTK_NOTEBOOK(notebook),terminal,gtk_label_new(v3270_get_session_name(terminal))); @@ -211,7 +212,7 @@ int main (int argc, char **argv) { static const GOptionEntry app_options[] = { { "plugin-path", 'P', 0, G_OPTION_ARG_STRING, &plugin_path, "Path for plugin search", NULL }, - { "install", 'S', 0, G_OPTION_ARG_STRING, &session_name, "Session name", "pw3270" }, + { "session-name", 'S', 0, G_OPTION_ARG_STRING, &session_name, "Session name", "pw3270" }, { "module", 'm', 0, G_OPTION_ARG_STRING, &plugin_name, "Module name", "ipc3270c." G_MODULE_SUFFIX }, { NULL } -- libgit2 0.21.2