X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/ae21e8d6ad32d0bf3517127aef5cd8129b7507aa..0eb93798fdb7b37b7d43b92b5166e0ca4dac98b9:/stglibs/srvconf.lib/servconf.cpp diff --git a/stglibs/srvconf.lib/servconf.cpp b/stglibs/srvconf.lib/servconf.cpp index 430de3c1..e7ecfdf4 100644 --- a/stglibs/srvconf.lib/servconf.cpp +++ b/stglibs/srvconf.lib/servconf.cpp @@ -60,6 +60,7 @@ class SERVCONF::IMPL public: IMPL(const std::string & server, uint16_t port, const std::string & login, const std::string & password); + ~IMPL() { XML_ParserFree(parser); } const std::string & GetStrError() const; static void Start(void * data, const char * el, const char ** attr); @@ -348,11 +349,13 @@ int ret = 0; if ((ret = nt.Connect()) != st_ok) { errorMsg = nt.GetError(); + cp.Failure(errorMsg); return ret; } if ((ret = nt.Transact(request, ParserRecv, this)) != st_ok) { errorMsg = nt.GetError(); + cp.Failure(errorMsg); return ret; }