remove last error for memory taken
| | |
| | | |
| | | namespace nng_wrap { |
| | | |
| | | static thread_local std::string verbose_info{}; |
| | | #define TAG |
| | | #define PRNTVITAG(args) |
| | | |
| | | /* |
| | | #ifndef PRNTVITAG |
| | | static thread_local std::string verbose_info{}; |
| | | #define TAG do{ verbose_info.clear(); \ |
| | | verbose_info=string("function [")+__FUNCTION__+string("]"); \ |
| | | }while(0) |
| | | #define PRNTVITAG(msg) do{ \ |
| | | verbose_info+=string("-> (") + msg + string(")"); \ |
| | | }while(0) |
| | | // #define TAG |
| | | // #define PRNTVITAG(args) |
| | | #endif |
| | | */ |
| | | |
| | | ///////////////////////////////////////////////// |
| | | enum{ |
| | |
| | | } |
| | | |
| | | void set_last_error(const std::string& emsg){ |
| | | verbose_info += emsg; |
| | | // verbose_info += emsg; |
| | | } |
| | | |
| | | void get_last_error(int* ec, void** emsg, int* emsg_len){ |
| | |
| | | |
| | | *ec = nn_errno(); |
| | | const char* msg = nn_strerror(*ec); |
| | | string strMsg(msg); |
| | | strMsg = strMsg + "{" + verbose_info + "}"; |
| | | copy_memory(emsg, emsg_len, strMsg.data(), strMsg.size()); |
| | | verbose_info.clear(); |
| | | // string strMsg(msg); |
| | | // strMsg = strMsg + "{" + verbose_info + "}"; |
| | | // copy_memory(emsg, emsg_len, strMsg.data(), strMsg.size()); |
| | | // verbose_info.clear(); |
| | | |
| | | copy_memory(emsg, emsg_len, msg, strlen(msg)); |
| | | } |
| | | |
| | | /////////////////////////////////////////////////////// |