Commit 21c79616ed131d019aa8f358a8f55266a5d20383

Authored by perry.werneck@gmail.com
1 parent 52e65d93

Corrigindo segfault na api rexx

src/plugins/dbus3270/main.c
@@ -100,7 +100,7 @@ @@ -100,7 +100,7 @@
100 else 100 else
101 { 101 {
102 session_id = id; 102 session_id = id;
103 - trace("DBUS service name is %s",service_name); 103 + g_message("DBUS service name is %s",service_name);
104 org_freedesktop_DBus_request_name(proxy, service_name, DBUS_NAME_FLAG_DO_NOT_QUEUE, &result, &error); 104 org_freedesktop_DBus_request_name(proxy, service_name, DBUS_NAME_FLAG_DO_NOT_QUEUE, &result, &error);
105 } 105 }
106 } 106 }
@@ -133,7 +133,7 @@ @@ -133,7 +133,7 @@
133 pw3270_set_session_name(window,session); 133 pw3270_set_session_name(window,session);
134 g_free(session); 134 g_free(session);
135 135
136 - trace("DBUS service path is %s",path); 136 + g_message("DBUS service path is %s",path);
137 137
138 pw3270_dbus_register_object(connection,proxy,PW3270_TYPE_DBUS,&dbus_glib_pw3270_dbus_object_info,path); 138 pw3270_dbus_register_object(connection,proxy,PW3270_TYPE_DBUS,&dbus_glib_pw3270_dbus_object_info,path);
139 139
src/plugins/rx3270/remote.cc
@@ -190,6 +190,8 @@ remote::remote(const char *name) @@ -190,6 +190,8 @@ remote::remote(const char *name)
190 char * str = strdup(name); 190 char * str = strdup(name);
191 char * ptr; 191 char * ptr;
192 192
  193 + trace("%s str=%p",__FUNCTION__,str);
  194 +
193 for(ptr=str;*ptr;ptr++) 195 for(ptr=str;*ptr;ptr++)
194 *ptr = tolower(*ptr); 196 *ptr = tolower(*ptr);
195 197
@@ -253,6 +255,7 @@ remote::remote(const char *name) @@ -253,6 +255,7 @@ remote::remote(const char *name)
253 dbus_error_init(&err); 255 dbus_error_init(&err);
254 256
255 conn = dbus_bus_get(DBUS_BUS_SESSION, &err); 257 conn = dbus_bus_get(DBUS_BUS_SESSION, &err);
  258 + trace("dbus_bus_get conn=%p",conn);
256 259
257 if (dbus_error_is_set(&err)) 260 if (dbus_error_is_set(&err))
258 { 261 {
@@ -267,6 +270,7 @@ remote::remote(const char *name) @@ -267,6 +270,7 @@ remote::remote(const char *name)
267 } 270 }
268 271
269 rc = dbus_bus_request_name(conn, "br.com.bb." PACKAGE_NAME ".rexx", DBUS_NAME_FLAG_REPLACE_EXISTING , &err); 272 rc = dbus_bus_request_name(conn, "br.com.bb." PACKAGE_NAME ".rexx", DBUS_NAME_FLAG_REPLACE_EXISTING , &err);
  273 + trace("dbus_bus_request_name rc=%d",rc);
270 274
271 if (dbus_error_is_set(&err)) 275 if (dbus_error_is_set(&err))
272 { 276 {
src/plugins/rx3270/rx3270.cc
@@ -193,9 +193,17 @@ int rx3270::set_clipboard(const char *text) @@ -193,9 +193,17 @@ int rx3270::set_clipboard(const char *text)
193 return EINVAL; 193 return EINVAL;
194 } 194 }
195 195
  196 +extern "C"
  197 +{
  198 + static void memfree(void *ptr)
  199 + {
  200 + free(ptr);
  201 + }
  202 +}
  203 +
196 void rx3270::free(void *ptr) 204 void rx3270::free(void *ptr)
197 { 205 {
198 - free(ptr); 206 + memfree(ptr);
199 } 207 }
200 208
201 int rx3270::popup_dialog(LIB3270_NOTIFY id , const char *title, const char *message, const char *fmt, ...) 209 int rx3270::popup_dialog(LIB3270_NOTIFY id , const char *title, const char *message, const char *fmt, ...)