Slightly refactor wxWebRequestImpl::ProcessStateEvent()

Call GetResponse() only once.

Also put the code for State_Completed inside the case for this state in
the switch instead of testing for it separately later.

No real changes.
This commit is contained in:
Vadim Zeitlin
2021-01-16 14:49:25 +01:00
parent 3107a17353
commit 1bf6d5e188

View File

@@ -299,6 +299,13 @@ SplitParameters(const wxString& s, wxWebRequestHeaderMap& parameters)
void wxWebRequestImpl::ProcessStateEvent(wxWebRequest::State state, const wxString& failMsg)
{
wxString dataFile;
const wxWebResponseImplPtr& response = GetResponse();
wxWebRequestEvent evt(wxEVT_WEBREQUEST_STATE, GetId(), state,
wxWebResponse(response), failMsg);
switch ( state )
{
case wxWebRequest::State_Idle:
@@ -310,23 +317,20 @@ void wxWebRequestImpl::ProcessStateEvent(wxWebRequest::State state, const wxStri
break;
case wxWebRequest::State_Completed:
if ( m_storage == wxWebRequest::Storage_File )
{
dataFile = response->GetDataFile();
evt.SetDataFile(dataFile);
}
wxFALLTHROUGH;
case wxWebRequest::State_Failed:
case wxWebRequest::State_Cancelled:
if ( GetResponse() )
GetResponse()->Finalize();
if ( response )
response->Finalize();
break;
}
wxString dataFile;
wxWebRequestEvent evt(wxEVT_WEBREQUEST_STATE, GetId(), state,
wxWebResponse(GetResponse()), failMsg);
if ( state == wxWebRequest::State_Completed && m_storage == wxWebRequest::Storage_File )
{
dataFile = GetResponse()->GetDataFile();
evt.SetDataFile(dataFile);
}
m_handler->ProcessEvent(evt);
// Remove temporary file if we're using one and if it still exists: it