Commit 40d2d527e5671069fe97f776650ff9ac716bb3f1
1 parent
3712cc3b
Exists in
master
and in
5 other branches
Corrigindo chamadas IPC no windows
Showing
9 changed files
with
64 additions
and
18 deletions
Show diff stats
po/pt_BR.po
@@ -5,7 +5,7 @@ msgid "" | @@ -5,7 +5,7 @@ msgid "" | ||
5 | msgstr "" | 5 | msgstr "" |
6 | "Project-Id-Version: pw3270 5.0\n" | 6 | "Project-Id-Version: pw3270 5.0\n" |
7 | "Report-Msgid-Bugs-To: \n" | 7 | "Report-Msgid-Bugs-To: \n" |
8 | -"POT-Creation-Date: 2014-04-15 15:34-0300\n" | 8 | +"POT-Creation-Date: 2014-04-16 07:31-0300\n" |
9 | "PO-Revision-Date: 2014-02-17 08:05-0300\n" | 9 | "PO-Revision-Date: 2014-02-17 08:05-0300\n" |
10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" | 10 | "Last-Translator: Perry Werneck <perry.werneck@gmail.com>\n" |
11 | "Language-Team: Portugues <>\n" | 11 | "Language-Team: Portugues <>\n" |
src/classlib/Makefile.in
@@ -61,6 +61,8 @@ LIBS=@LIBS@ $(CLASS_LIBS) | @@ -61,6 +61,8 @@ LIBS=@LIBS@ $(CLASS_LIBS) | ||
61 | 61 | ||
62 | DEBUG_CFLAGS=-DDEBUG=1 -g -Wall | 62 | DEBUG_CFLAGS=-DDEBUG=1 -g -Wall |
63 | 63 | ||
64 | +EXEEXT=@EXEEXT@ | ||
65 | + | ||
64 | #---[ Rules ]------------------------------------------------------------------ | 66 | #---[ Rules ]------------------------------------------------------------------ |
65 | 67 | ||
66 | CXX=@CXX@ | 68 | CXX=@CXX@ |
@@ -103,7 +105,7 @@ run: $(BINDBG)/testprogram$(EXEEXT) | @@ -103,7 +105,7 @@ run: $(BINDBG)/testprogram$(EXEEXT) | ||
103 | $(BINDBG)/testprogram$(EXEEXT): $(OBJDBG)/testprogram.o $(BINDBG)/$(LIBNAME) | 105 | $(BINDBG)/testprogram$(EXEEXT): $(OBJDBG)/testprogram.o $(BINDBG)/$(LIBNAME) |
104 | @echo " CCLD `basename $@`" | 106 | @echo " CCLD `basename $@`" |
105 | @$(MKDIR) `dirname $@` | 107 | @$(MKDIR) `dirname $@` |
106 | - @$(LD) -o $@ $^ $(LIBS) | 108 | + @$(LD) -o $@ $^ |
107 | 109 | ||
108 | $(BINDBG)/$(LIBNAME): $(foreach SRC, $(basename $(CLASS_SRC)), $(OBJDBG)/$(SRC).o) | 110 | $(BINDBG)/$(LIBNAME): $(foreach SRC, $(basename $(CLASS_SRC)), $(OBJDBG)/$(SRC).o) |
109 | @echo " CCLD `basename $@`" | 111 | @echo " CCLD `basename $@`" |
src/classlib/remote.cc
@@ -134,17 +134,21 @@ | @@ -134,17 +134,21 @@ | ||
134 | struct hllapi_packet_text * response; | 134 | struct hllapi_packet_text * response; |
135 | DWORD cbSize = sizeof(struct hllapi_packet_text)+len; | 135 | DWORD cbSize = sizeof(struct hllapi_packet_text)+len; |
136 | string s; | 136 | string s; |
137 | + char buffer[cbSize+2]; | ||
137 | 138 | ||
138 | - response = (struct hllapi_packet_text *) malloc(cbSize+2); | ||
139 | - memset(response,0,cbSize+2); | 139 | + response = (struct hllapi_packet_text *) buffer; |
140 | 140 | ||
141 | - if(TransactNamedPipe(hPipe,(LPVOID) query, szQuery, &response, cbSize, &cbSize,NULL)) | 141 | + if(TransactNamedPipe(hPipe,(LPVOID) query, szQuery, response, cbSize, &cbSize,NULL)) |
142 | { | 142 | { |
143 | - if(response->packet_id) | 143 | + buffer[cbSize] = 0; |
144 | + if(!response->packet_id) | ||
144 | s.assign(response->text); | 145 | s.assign(response->text); |
145 | } | 146 | } |
146 | - | ||
147 | - free(response); | 147 | + else |
148 | + { | ||
149 | + trace("TransactNamedPipe error on call %d",(int) *( (unsigned char *) query)); | ||
150 | + s.assign(""); | ||
151 | + } | ||
148 | 152 | ||
149 | return s; | 153 | return s; |
150 | } | 154 | } |
@@ -402,8 +406,6 @@ | @@ -402,8 +406,6 @@ | ||
402 | char * str; | 406 | char * str; |
403 | char * ptr; | 407 | char * ptr; |
404 | time_t timer; | 408 | time_t timer; |
405 | - WIN32_FIND_DATA FindFileData; | ||
406 | - | ||
407 | 409 | ||
408 | hPipe = INVALID_HANDLE_VALUE; | 410 | hPipe = INVALID_HANDLE_VALUE; |
409 | 411 | ||
@@ -484,6 +486,22 @@ | @@ -484,6 +486,22 @@ | ||
484 | 486 | ||
485 | free(str); | 487 | free(str); |
486 | 488 | ||
489 | + trace("Searching for \"%s\"",buffer); | ||
490 | + | ||
491 | + hPipe = CreateFile(buffer,GENERIC_WRITE|GENERIC_READ,0,NULL,OPEN_EXISTING,0,NULL); | ||
492 | + | ||
493 | + if(hPipe == INVALID_HANDLE_VALUE) | ||
494 | + { | ||
495 | + timer = time(0)+20; | ||
496 | + while(hPipe == INVALID_HANDLE_VALUE && time(0) < timer) | ||
497 | + { | ||
498 | + hPipe = CreateFile(buffer,GENERIC_WRITE|GENERIC_READ,0,NULL,OPEN_EXISTING,0,NULL); | ||
499 | + Sleep(10); | ||
500 | + } | ||
501 | + } | ||
502 | + /* | ||
503 | + WIN32_FIND_DATA FindFileData; | ||
504 | + | ||
487 | timer = time(0)+20; | 505 | timer = time(0)+20; |
488 | while(hPipe == INVALID_HANDLE_VALUE && time(0) < timer) | 506 | while(hPipe == INVALID_HANDLE_VALUE && time(0) < timer) |
489 | { | 507 | { |
@@ -501,6 +519,7 @@ | @@ -501,6 +519,7 @@ | ||
501 | throw exception(GetLastError(),"Timeout waiting for %s instance",PACKAGE_NAME); | 519 | throw exception(GetLastError(),"Timeout waiting for %s instance",PACKAGE_NAME); |
502 | return; | 520 | return; |
503 | } | 521 | } |
522 | + */ | ||
504 | 523 | ||
505 | if(hPipe == INVALID_HANDLE_VALUE) | 524 | if(hPipe == INVALID_HANDLE_VALUE) |
506 | { | 525 | { |
@@ -762,8 +781,8 @@ | @@ -762,8 +781,8 @@ | ||
762 | 781 | ||
763 | while(time(0) < end) | 782 | while(time(0) < end) |
764 | { | 783 | { |
765 | - if(!is_connected()) | ||
766 | - return ENOTCONN; | 784 | + //if(!is_connected()) |
785 | + // return ENOTCONN; | ||
767 | 786 | ||
768 | if(is_ready()) | 787 | if(is_ready()) |
769 | return 0; | 788 | return 0; |
src/classlib/testprogram.cc
@@ -61,6 +61,13 @@ | @@ -61,6 +61,13 @@ | ||
61 | cout << "\tHost charset: " << s.c_str() << endl; | 61 | cout << "\tHost charset: " << s.c_str() << endl; |
62 | 62 | ||
63 | session->connect(false); | 63 | session->connect(false); |
64 | + | ||
65 | + cout << "\tWaitForReady: " << session->wait_for_ready(10) << endl; | ||
66 | + | ||
67 | + cout << "\tIsConnected: " << session->is_connected() << endl; | ||
68 | + cout << "\tIsReady: " << session->is_ready() << endl; | ||
69 | + cout << "\tString(3,2,14) " << session->get_string_at(3,2,14) << endl; | ||
70 | + | ||
64 | delete session; | 71 | delete session; |
65 | } | 72 | } |
66 | 73 |
src/plugins/hllapi/calls.cc
@@ -30,9 +30,7 @@ | @@ -30,9 +30,7 @@ | ||
30 | #include <exception> | 30 | #include <exception> |
31 | #include <pw3270/class.h> | 31 | #include <pw3270/class.h> |
32 | #include <pw3270/hllapi.h> | 32 | #include <pw3270/hllapi.h> |
33 | - | ||
34 | - #undef trace | ||
35 | - #define trace( fmt, ... ) { FILE *out = fopen("c:\\Users\\Perry\\hllapi.log","a"); if(out) { fprintf(out, "%s(%d) " fmt "\n", __FILE__, __LINE__, __VA_ARGS__ ); fclose(out); } } | 33 | + #include "client.h" |
36 | 34 | ||
37 | using namespace std; | 35 | using namespace std; |
38 | using namespace PW3270_NAMESPACE; | 36 | using namespace PW3270_NAMESPACE; |
@@ -52,9 +50,11 @@ | @@ -52,9 +50,11 @@ | ||
52 | if(hSession) | 50 | if(hSession) |
53 | delete hSession; | 51 | delete hSession; |
54 | hSession = session::create(mode); | 52 | hSession = session::create(mode); |
53 | + trace("hSession=%p",hSession); | ||
55 | } | 54 | } |
56 | catch(std::exception &e) | 55 | catch(std::exception &e) |
57 | { | 56 | { |
57 | + trace("Error \"%s\"",e.what()); | ||
58 | return HLLAPI_STATUS_SYSTEM_ERROR; | 58 | return HLLAPI_STATUS_SYSTEM_ERROR; |
59 | } | 59 | } |
60 | 60 |
src/plugins/hllapi/client.h
@@ -38,6 +38,11 @@ | @@ -38,6 +38,11 @@ | ||
38 | 38 | ||
39 | #define set_active(x) /* x */ | 39 | #define set_active(x) /* x */ |
40 | 40 | ||
41 | + #if defined(DEBUG) && defined(_WIN32) | ||
42 | + #undef trace | ||
43 | + #define trace( fmt, ... ) { FILE *out = fopen("c:\\Users\\Perry\\hllapi.log","a"); if(out) { fprintf(out, "%s(%d) " fmt "\n", __FILE__, __LINE__, __VA_ARGS__ ); fclose(out); } } | ||
44 | + #endif // DEBUG | ||
45 | + | ||
41 | void * hllapi_pipe_init(const char *id); | 46 | void * hllapi_pipe_init(const char *id); |
42 | void hllapi_pipe_deinit(void *h); | 47 | void hllapi_pipe_deinit(void *h); |
43 | const char * hllapi_pipe_get_revision(void); | 48 | const char * hllapi_pipe_get_revision(void); |
src/plugins/hllapi/hllapi.c
@@ -98,9 +98,14 @@ | @@ -98,9 +98,14 @@ | ||
98 | for(f=0;f< (sizeof (hllapi_call) / sizeof ((hllapi_call)[0]));f++) | 98 | for(f=0;f< (sizeof (hllapi_call) / sizeof ((hllapi_call)[0]));f++) |
99 | { | 99 | { |
100 | if(hllapi_call[f].func == *func) | 100 | if(hllapi_call[f].func == *func) |
101 | - return hllapi_call[f].exec(buffer,length,rc); | 101 | + { |
102 | + int status = hllapi_call[f].exec(buffer,length,rc); | ||
103 | + trace("hllapi(%d) exits with rc=%d",*func,status); | ||
104 | + return status; | ||
105 | + } | ||
102 | } | 106 | } |
103 | 107 | ||
108 | + trace("hllapi(%d) failed",*func); | ||
104 | return invalid_request(buffer, length, rc); | 109 | return invalid_request(buffer, length, rc); |
105 | } | 110 | } |
106 | 111 |
src/plugins/hllapi/pluginmain.c
@@ -160,6 +160,12 @@ | @@ -160,6 +160,12 @@ | ||
160 | pkt->packet_id = errno ? errno : -1; | 160 | pkt->packet_id = errno ? errno : -1; |
161 | } | 161 | } |
162 | 162 | ||
163 | + trace("szBlock=%d text=\"%s\"",szBlock, ( (struct hllapi_packet_text *) pkt)->text); | ||
164 | + for(int f=0;f< (int) szBlock;f++) | ||
165 | + { | ||
166 | + trace("rsp(%d)= %d \"%s\"",f,* (((char *) pkt)+f),((char *) pkt)+f); | ||
167 | + } | ||
168 | + | ||
163 | WriteFile(source->hPipe,pkt,szBlock,&szBlock,NULL); | 169 | WriteFile(source->hPipe,pkt,szBlock,&szBlock,NULL); |
164 | 170 | ||
165 | g_free(pkt); | 171 | g_free(pkt); |
@@ -352,6 +358,7 @@ | @@ -352,6 +358,7 @@ | ||
352 | break; | 358 | break; |
353 | 359 | ||
354 | case HLLAPI_PACKET_GET_HOST_CHARSET: | 360 | case HLLAPI_PACKET_GET_HOST_CHARSET: |
361 | + trace("%s","HLLAPI_PACKET_GET_HOST_CHARSET"); | ||
355 | send_text(source,(char *) lib3270_get_host_charset(lib3270_get_default_session_handle())); | 362 | send_text(source,(char *) lib3270_get_host_charset(lib3270_get_default_session_handle())); |
356 | break; | 363 | break; |
357 | 364 |
src/plugins/rx3270/Makefile.in
@@ -47,6 +47,7 @@ LIBS=@REXX_LIBS@ @LIBICONV@ @DBUS_LIBS@ | @@ -47,6 +47,7 @@ LIBS=@REXX_LIBS@ @LIBICONV@ @DBUS_LIBS@ | ||
47 | CFLAGS=@REXX_CFLAGS@ @DBUS_CFLAGS@ | 47 | CFLAGS=@REXX_CFLAGS@ @DBUS_CFLAGS@ |
48 | REXX_HOME=@REXX_HOME@ | 48 | REXX_HOME=@REXX_HOME@ |
49 | REXXLIBDIR=@REXX_LIBDIR@ | 49 | REXXLIBDIR=@REXX_LIBDIR@ |
50 | +SYSDLL_FLAGS=@SYSDLL_FLAGS@ | ||
50 | 51 | ||
51 | #---[ Debug Targets ]---------------------------------------------------------- | 52 | #---[ Debug Targets ]---------------------------------------------------------- |
52 | 53 | ||
@@ -58,7 +59,7 @@ $(BINDBG)/$(PLUGIN_NAME): $(foreach SRC, $(basename $(PLUGIN_SRC)), $(OBJDBG)/$( | @@ -58,7 +59,7 @@ $(BINDBG)/$(PLUGIN_NAME): $(foreach SRC, $(basename $(PLUGIN_SRC)), $(OBJDBG)/$( | ||
58 | $(BINDBG)$(DLL_NAME).$(VERSION): $(foreach SRC, $(basename $(EXTAPI_SRC)), $(OBJDBG)/$(SRC)@OBJEXT@) $(CLASS_DEBUG_OBJECTS) | 59 | $(BINDBG)$(DLL_NAME).$(VERSION): $(foreach SRC, $(basename $(EXTAPI_SRC)), $(OBJDBG)/$(SRC)@OBJEXT@) $(CLASS_DEBUG_OBJECTS) |
59 | @echo " CCLD `basename $@`" | 60 | @echo " CCLD `basename $@`" |
60 | @$(MKDIR) `dirname $@` | 61 | @$(MKDIR) `dirname $@` |
61 | - @$(CXX) $(DLL_FLAGS) $(LDFLAGS) @LDSOFLAGS@ @DBGRPATH@ -o $@ $^ $(LIBS) $(LIB3270_LIBS) $(CLASS_LIBS) | 62 | + @$(CXX) $(SYSDLL_FLAGS) $(LDFLAGS) @LDSOFLAGS@ @DBGRPATH@ -o $@ $^ $(LIBS) $(LIB3270_LIBS) $(CLASS_LIBS) |
62 | 63 | ||
63 | #---[ Release Targets ]-------------------------------------------------------- | 64 | #---[ Release Targets ]-------------------------------------------------------- |
64 | 65 | ||
@@ -70,7 +71,7 @@ $(BINRLS)/$(PLUGIN_NAME): $(foreach SRC, $(basename $(PLUGIN_SRC)), $(OBJRLS)/$( | @@ -70,7 +71,7 @@ $(BINRLS)/$(PLUGIN_NAME): $(foreach SRC, $(basename $(PLUGIN_SRC)), $(OBJRLS)/$( | ||
70 | $(BINRLS)$(DLL_NAME).$(VERSION): $(foreach SRC, $(basename $(EXTAPI_SRC)), $(OBJRLS)/$(SRC).o) $(CLASS_RELEASE_OBJECTS) | 71 | $(BINRLS)$(DLL_NAME).$(VERSION): $(foreach SRC, $(basename $(EXTAPI_SRC)), $(OBJRLS)/$(SRC).o) $(CLASS_RELEASE_OBJECTS) |
71 | @echo " CCLD `basename $@`" | 72 | @echo " CCLD `basename $@`" |
72 | @$(MKDIR) `dirname $@` | 73 | @$(MKDIR) `dirname $@` |
73 | - @$(CXX) $(DLL_FLAGS) @LDSOFLAGS@ $(LDFLAGS) @RLS_LDFLAGS@ -o $@ $^ $(LIBS) $(LIB3270_LIBS) $(CLASS_LIBS) | 74 | + @$(CXX) $(SYSDLL_FLAGS) @LDSOFLAGS@ $(LDFLAGS) @RLS_LDFLAGS@ -o $@ $^ $(LIBS) $(LIB3270_LIBS) $(CLASS_LIBS) |
74 | 75 | ||
75 | install: | 76 | install: |
76 | @$(MKDIR) $(DESTDIR)$(libdir)/$(PACKAGE_NAME)-plugin | 77 | @$(MKDIR) $(DESTDIR)$(libdir)/$(PACKAGE_NAME)-plugin |