Commit 4e48cc8cc70f729b660c246f6ca871945f823ed3
1 parent
7074ab59
Exists in
master
and in
1 other branch
Fixing bugs in windows modules.
Showing
5 changed files
with
11 additions
and
14 deletions
Show diff stats
client/src/host/pop.cc
| ... | ... | @@ -45,7 +45,7 @@ TN3270::Host & TN3270::Host::pop(int baddr, std::string &text) { |
| 45 | 45 | this->session->waitForReady(this->timeout); |
| 46 | 46 | |
| 47 | 47 | if(this->session->getConnectionState() == TN3270::DISCONNECTED) { |
| 48 | - throw std::system_error(ENOTCONN, std::system_category()); | |
| 48 | + chkResponse(ENOTCONN); | |
| 49 | 49 | } |
| 50 | 50 | |
| 51 | 51 | session->pop(baddr, text); |
| ... | ... | @@ -58,7 +58,7 @@ TN3270::Host & TN3270::Host::pop(int row, int col, std::string &text) { |
| 58 | 58 | this->session->waitForReady(this->timeout); |
| 59 | 59 | |
| 60 | 60 | if(this->session->getConnectionState() == TN3270::DISCONNECTED) { |
| 61 | - throw std::system_error(ENOTCONN, std::system_category()); | |
| 61 | + chkResponse(ENOTCONN); | |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | session->pop(row,col,text); |
| ... | ... | @@ -71,7 +71,7 @@ TN3270::Host & TN3270::Host::pop(std::string &text) { |
| 71 | 71 | this->session->waitForReady(this->timeout); |
| 72 | 72 | |
| 73 | 73 | if(this->session->getConnectionState() == TN3270::DISCONNECTED) { |
| 74 | - throw std::system_error(ENOTCONN, std::system_category()); | |
| 74 | + chkResponse(ENOTCONN); | |
| 75 | 75 | } |
| 76 | 76 | |
| 77 | 77 | session->pop(text); | ... | ... |
client/src/include/ipc-client-internals.h
| ... | ... | @@ -97,6 +97,9 @@ |
| 97 | 97 | |
| 98 | 98 | namespace TN3270 { |
| 99 | 99 | |
| 100 | + /// @brief Check lib3270 return codes, launch exception when failed. | |
| 101 | + TN3270_PRIVATE void chkResponse(int rc); | |
| 102 | + | |
| 100 | 103 | namespace Abstract { |
| 101 | 104 | |
| 102 | 105 | class TN3270_PRIVATE Session : public TN3270::Session { |
| ... | ... | @@ -142,9 +145,6 @@ |
| 142 | 145 | virtual void set(int baddr, const std::string &str) = 0; |
| 143 | 146 | virtual void set(int row, int col, const std::string &str) = 0; |
| 144 | 147 | |
| 145 | - /// @brief Check lib3270 return codes, launch exception when failed. | |
| 146 | - static void chkResponse(int rc); | |
| 147 | - | |
| 148 | 148 | public: |
| 149 | 149 | |
| 150 | 150 | // Contents | ... | ... |
client/src/session/remote/actions.cc
| ... | ... | @@ -71,10 +71,8 @@ |
| 71 | 71 | .push(url) |
| 72 | 72 | .call(); |
| 73 | 73 | |
| 74 | - /* | |
| 75 | 74 | if(seconds) |
| 76 | 75 | this->waitForReady(seconds); |
| 77 | - */ | |
| 78 | 76 | |
| 79 | 77 | } |
| 80 | 78 | |
| ... | ... | @@ -98,7 +96,7 @@ |
| 98 | 96 | #endif // _WIN32 |
| 99 | 97 | |
| 100 | 98 | if(getConnectionState() == TN3270::DISCONNECTED) |
| 101 | - throw std::runtime_error("Disconnected"); | |
| 99 | + chkResponse(ENOTCONN); | |
| 102 | 100 | |
| 103 | 101 | } |
| 104 | 102 | ... | ... |
client/src/session/tools.cc
client/src/testprogram/testprogram.cc
| ... | ... | @@ -98,8 +98,6 @@ |
| 98 | 98 | |
| 99 | 99 | host.connect(nullptr); |
| 100 | 100 | |
| 101 | - /* | |
| 102 | - | |
| 103 | 101 | cout |
| 104 | 102 | << "Wait for unlock returns " << host.getKeyboardLockState() << std::endl |
| 105 | 103 | << "Connection state is " << toCharString(host.getConnectionState()) << std::endl |
| ... | ... | @@ -124,8 +122,9 @@ |
| 124 | 122 | |
| 125 | 123 | host.pfkey(3); |
| 126 | 124 | |
| 127 | - // host.disconnect(); | |
| 128 | - */ | |
| 125 | + host.wait(10); | |
| 126 | + | |
| 127 | + host.disconnect(); | |
| 129 | 128 | |
| 130 | 129 | } catch(const std::exception &e) { |
| 131 | 130 | ... | ... |