Commit 49ef3fabd2378a4d610224c992aa82b4b61b7183

Authored by Perry Werneck
1 parent 77a07d94
Exists in master and in 1 other branch develop

D-Bus object path and interface name should be fixed, just the service name can change.

src/ipc3270c/linux/main.c
@@ -61,7 +61,8 @@ @@ -61,7 +61,8 @@
61 guint result; 61 guint result;
62 char session_id = 0; 62 char session_id = 0;
63 char id = 'a'; 63 char id = 'a';
64 - const gchar * name = "pw3270"; 64 + gchar * ptr;
  65 + const gchar * name = v3270_get_session_name(terminal);
65 66
66 connection = dbus_g_bus_get_private(DBUS_BUS_SESSION, g_main_context_default(), &error); 67 connection = dbus_g_bus_get_private(DBUS_BUS_SESSION, g_main_context_default(), &error);
67 if(error) 68 if(error)
@@ -92,6 +93,8 @@ @@ -92,6 +93,8 @@
92 gboolean has_owner = FALSE; 93 gboolean has_owner = FALSE;
93 94
94 service_name = g_strdup_printf("br.com.bb.%s.%c",name,(int) id); 95 service_name = g_strdup_printf("br.com.bb.%s.%c",name,(int) id);
  96 + for(ptr=service_name;*ptr;ptr++)
  97 + *ptr = g_ascii_tolower(*ptr);
95 98
96 org_freedesktop_DBus_name_has_owner(proxy, service_name, &has_owner, NULL); 99 org_freedesktop_DBus_name_has_owner(proxy, service_name, &has_owner, NULL);
97 100
@@ -132,14 +135,11 @@ @@ -132,14 +135,11 @@
132 135
133 if(session_id) 136 if(session_id)
134 { 137 {
135 - g_autofree gchar * path = g_strdup_printf("/br/com/bb/%s",name);  
136 - g_autofree gchar * session = g_strdup_printf("%s:%c",name,g_ascii_toupper(session_id));  
137 138
138 - // pw3270_set_session_name(window,session);  
139 - v3270_set_session_name(terminal,session); 139 + g_autofree gchar * session = g_strdup_printf("%s:%c",name,g_ascii_toupper(session_id));
140 140
  141 + static const gchar * path = "/br/com/bb/pw3270";
141 g_message("DBUS service path is %s, session name is %s",path,session); 142 g_message("DBUS service path is %s, session name is %s",path,session);
142 -  
143 pw3270_dbus_register_object(connection,proxy,PW3270_TYPE_DBUS,&dbus_glib_pw3270_dbus_object_info,path); 143 pw3270_dbus_register_object(connection,proxy,PW3270_TYPE_DBUS,&dbus_glib_pw3270_dbus_object_info,path);
144 144
145 } 145 }
src/ipc3270c/windows/main.c
@@ -598,7 +598,7 @@ @@ -598,7 +598,7 @@
598 LIB3270_EXPORT int pw3270_plugin_start(GtkWidget *window, GtkWidget *terminal) 598 LIB3270_EXPORT int pw3270_plugin_start(GtkWidget *window, GtkWidget *terminal)
599 { 599 {
600 char id; 600 char id;
601 - const gchar * name = gtk_widget_get_name(window); 601 + const gchar * name = v3270_get_session_name(terminal);
602 602
603 for(id='A';id < 'Z';id++) 603 for(id='A';id < 'Z';id++)
604 { 604 {
src/testprograms/ipc3270c.c
@@ -130,6 +130,7 @@ @@ -130,6 +130,7 @@
130 GModule * module = NULL; 130 GModule * module = NULL;
131 131
132 gtk_widget_set_name(window,session_name); 132 gtk_widget_set_name(window,session_name);
  133 + v3270_set_session_name(terminal, session_name);
133 134
134 // Setup tabs 135 // Setup tabs
135 gtk_notebook_append_page(GTK_NOTEBOOK(notebook),terminal,gtk_label_new(v3270_get_session_name(terminal))); 136 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) { @@ -211,7 +212,7 @@ int main (int argc, char **argv) {
211 212
212 static const GOptionEntry app_options[] = { 213 static const GOptionEntry app_options[] = {
213 { "plugin-path", 'P', 0, G_OPTION_ARG_STRING, &plugin_path, "Path for plugin search", NULL }, 214 { "plugin-path", 'P', 0, G_OPTION_ARG_STRING, &plugin_path, "Path for plugin search", NULL },
214 - { "install", 'S', 0, G_OPTION_ARG_STRING, &session_name, "Session name", "pw3270" }, 215 + { "session-name", 'S', 0, G_OPTION_ARG_STRING, &session_name, "Session name", "pw3270" },
215 { "module", 'm', 0, G_OPTION_ARG_STRING, &plugin_name, "Module name", "ipc3270c." G_MODULE_SUFFIX }, 216 { "module", 'm', 0, G_OPTION_ARG_STRING, &plugin_name, "Module name", "ipc3270c." G_MODULE_SUFFIX },
216 217
217 { NULL } 218 { NULL }