void updateFailed(HTTP::Request* req, SVNRepository::ResultCode err)
{
- SG_LOG(SG_IO, SG_WARN, "SVN: failed to update from:" << req->url());
+ SG_LOG(SG_IO, SG_WARN, "SVN: failed to update from:" << req->url()
+ << "\n(repository:" << p->baseUrl() << ")");
isUpdating = false;
status = err;
}
SG_LOG(SG_IO, SG_WARN, "request for:" << url() <<
" return code " << responseCode());
_repo->propFindFailed(this, SVNRepository::SVN_ERROR_SOCKET);
+ _repo = NULL;
}
}
virtual void onFail()
{
HTTP::Request::onFail();
- _repo->propFindFailed(this, SVNRepository::SVN_ERROR_SOCKET);
+ if (_repo) {
+ _repo->propFindFailed(this, SVNRepository::SVN_ERROR_SOCKET);
+ _repo = NULL;
+ }
}
private:
_failed = true;
} else {
SG_LOG(SG_IO, SG_WARN, "SVN: request for:" << url() <<
- " return code " << responseCode());
- _repo->updateFailed(this, SVNRepository::SVN_ERROR_SOCKET);
+ " got HTTP status " << responseCode());
+ _repo->updateFailed(this, SVNRepository::SVN_ERROR_HTTP);
_failed = true;
}
}
SVNRepository::ResultCode err = _parser.parseXML(s, n);
if (err) {
_failed = true;
- SG_LOG(SG_IO, SG_WARN, "SVN: request for:" << url() << " failed:" << err);
+ SG_LOG(SG_IO, SG_WARN, this << ": SVN: request for:" << url() << " failed:" << err);
_repo->updateFailed(this, err);
+ _repo = NULL;
}
}
virtual void onFail()
{
HTTP::Request::onFail();
- _repo->updateFailed(this, SVNRepository::SVN_ERROR_SOCKET);
+ if (_repo) {
+ _repo->updateFailed(this, SVNRepository::SVN_ERROR_SOCKET);
+ _repo = NULL;
+ }
}
private:
SVNReportParser _parser;