Fixes for OS X version checker HTTP code, actually handle connection failing.

Originally committed to SVN as r6158.
This commit is contained in:
Niels Martin Hansen 2011-12-24 17:53:02 +00:00
parent b74b437f08
commit 3d94b7e914
1 changed files with 12 additions and 1 deletions

View File

@ -152,8 +152,10 @@ AegisubVersionCheckerThread::AegisubVersionCheckerThread(bool interactive)
{
AegisubVersionCheckEventHandler::EnsureHandlerIsRegistered();
#ifndef __WXMAC__
if (!wxSocketBase::IsInitialized())
wxSocketBase::Initialize();
#endif
Create();
Run();
@ -465,7 +467,12 @@ void AegisubVersionCheckerThread::DoCheck()
AegisubVersionCheckResultEvent result_event;
int http_code = CFHTTPMessageGetResponseStatusCode(httpresp);
int http_code = 0;
if (httpresp != 0)
{
CFHTTPMessageGetResponseStatusCode(httpresp);
}
if (http_code >= 200 && http_code < 300)
{
wxStringInputStream strstream(result_body);
@ -476,6 +483,10 @@ void AegisubVersionCheckerThread::DoCheck()
ProcessUpdateFileLine(accept_tags, result_event, line);
}
}
else if (http_code == 0)
{
throw VersionCheckError(_("Could not connect to updates server."));
}
else
{
throw VersionCheckError(wxString::Format(_("HTTP request failed, got HTTP response %d."), http_code));