Merge pull request #1169 from csoler/v0.6-FT

V0.6 ft
This commit is contained in:
csoler 2018-02-11 21:28:43 +01:00 committed by GitHub
commit 0491e43118
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 644 additions and 168 deletions

View file

@ -302,7 +302,7 @@ void ftController::searchForDirectSources()
FileInfo info ; // Info needs to be re-allocated each time, to start with a clear list of peers (it's not cleared down there)
if( mSearch->search(it->first, RS_FILE_HINTS_REMOTE | RS_FILE_HINTS_SPEC_ONLY, info) )
for( std::list<TransferInfo>::const_iterator pit = info.peers.begin(); pit != info.peers.end(); ++pit )
for( std::vector<TransferInfo>::const_iterator pit = info.peers.begin(); pit != info.peers.end(); ++pit )
{
bool bAllowDirectDL = false;
switch (mFilePermDirectDLPolicy) {
@ -1030,7 +1030,7 @@ bool ftController::FileRequest(const std::string& fname, const RsFileHash& hash
}
std::list<RsPeerId>::const_iterator it;
std::list<TransferInfo>::const_iterator pit;
std::vector<TransferInfo>::const_iterator pit;
#ifdef CONTROL_DEBUG
std::cerr << "ftController::FileRequest(" << fname << ",";
@ -1623,6 +1623,8 @@ bool ftController::FileDetails(const RsFileHash &hash, FileInfo &info)
bool isDownloading = false;
bool isSuspended = false;
info.peers.clear();
for(pit = peerIds.begin(); pit != peerIds.end(); ++pit)
{
if (it->second->mTransfer->getPeerState(*pit, state, tfRate))