BOOL CHostBrowser::OnRead() { //CQuickLock oTransfersLock( Transfers.m_pSection ); // ED2K connections aren't handled here- they are in ED2KClient if ( m_nProtocol == PROTOCOL_ED2K || m_nProtocol == PROTOCOL_DC ) return TRUE; if ( ! IsInputExist() || ! IsOutputExist() ) return TRUE; CTransfer::OnRead(); switch ( m_nState ) { case hbsRequesting: if ( ! ReadResponseLine() ) return FALSE; if ( m_nState != hbsHeaders ) break; case hbsHeaders: if ( ! ReadHeaders() ) return FALSE; if ( m_nState != hbsContent ) break; case hbsContent: return ReadContent(); } return TRUE; }
BOOL CHostBrowser::OnRead() { if ( m_pInput == NULL || m_pOutput == NULL ) return TRUE; CTransfer::OnRead(); switch ( m_nState ) { case hbsRequesting: if ( ! ReadResponseLine() ) return FALSE; if ( m_nState != hbsHeaders ) break; case hbsHeaders: if ( ! ReadHeaders() ) return FALSE; if ( m_nState != hbsContent ) break; case hbsContent: return ReadContent(); } return TRUE; }