Add wxWebRequest progress methods

This commit is contained in:
Tobias Taschner
2018-10-26 23:38:40 +02:00
parent 871049f1a1
commit cf85c04d25
4 changed files with 27 additions and 1 deletions

View File

@@ -147,7 +147,10 @@ wxWebRequestWinHTTP::wxWebRequestWinHTTP(int id, wxWebSessionWinHTTP& session, c
m_session(session),
m_url(url),
m_connect(NULL),
m_request(NULL)
m_request(NULL),
m_dataWritten(0),
m_bytesExpectedToReceive(0),
m_bytesReceived(0)
{
m_headers = session.GetHeaders();
}
@@ -219,6 +222,7 @@ void wxWebRequestWinHTTP::CreateResponse()
if (::WinHttpReceiveResponse(m_request, NULL))
{
m_response.reset(new wxWebResponseWinHTTP(*this));
m_bytesExpectedToReceive = m_response->GetContentLength();
int status = m_response->GetStatus();
if ( status == 401 || status == 407)
{
@@ -415,6 +419,7 @@ bool wxWebResponseWinHTTP::ReadData()
bool wxWebResponseWinHTTP::ReportAvailableData(DWORD dataLen)
{
m_readBuffer.UngetAppendBuf(dataLen);
m_request.m_bytesReceived += dataLen;
return ReadData();
}