diff --git a/src/core/calls.cc b/src/core/calls.cc index 178f2f6..34b7e43 100644 --- a/src/core/calls.cc +++ b/src/core/calls.cc @@ -281,7 +281,7 @@ return -1; } - string contents = host.toString(0,-1,0); + string contents = host.toString(0,-1,'\0'); size_t pos = contents.find(text); diff --git a/src/core/get.cc b/src/core/get.cc index d521fb8..f6ee74d 100644 --- a/src/core/get.cc +++ b/src/core/get.cc @@ -112,7 +112,7 @@ return get([offset,buffer,len](TN3270::Host &host) { - string contents = host.toString((int) offset, (size_t) len); + string contents = host.toString((int) offset, (int) len); memset(buffer,' ',len); strncpy((char *) buffer, contents.c_str(), std::min((size_t) len,contents.size())); diff --git a/src/core/hllapi.cc b/src/core/hllapi.cc index 13e7b62..766c672 100644 --- a/src/core/hllapi.cc +++ b/src/core/hllapi.cc @@ -250,7 +250,7 @@ static int search_ps(char *buffer, unsigned short *length, unsigned short *ps) { if(!host.isConnected()) return HLLAPI_STATUS_DISCONNECTED; - string contents = host.toString(0,-1,0); + string contents = host.toString(0,-1, '\0'); if( ((size_t) *ps) >= contents.size()) return HLLAPI_STATUS_BAD_POSITION; @@ -305,7 +305,7 @@ static int copy_ps(char *buffer, unsigned short *length, unsigned short *rc) { if(!host.isConnected()) return HLLAPI_STATUS_DISCONNECTED; - string contents = host.toString(0,-1,0); + string contents = host.toString(0,-1,'\0'); size_t szBuffer = std::min(contents.size(), ((size_t) *length)); *length = (unsigned short) szBuffer; diff --git a/src/core/tools.cc b/src/core/tools.cc index c0bba05..2a915c0 100644 --- a/src/core/tools.cc +++ b/src/core/tools.cc @@ -77,7 +77,9 @@ } translate[] = { { ENOTCONN, HLLAPI_STATUS_DISCONNECTED }, { ECONNRESET, HLLAPI_STATUS_DISCONNECTED }, +#ifndef _WIN32 { EHOSTDOWN, HLLAPI_STATUS_DISCONNECTED }, +#endif // !_WIN32 { EINVAL, HLLAPI_STATUS_BAD_PARAMETER }, { ETIMEDOUT, HLLAPI_STATUS_TIMEOUT }, { EBUSY, HLLAPI_STATUS_TIMEOUT }, -- libgit2 0.21.2