From 5e913feee7fd66a13e1884fb6b397fd944a60bbf Mon Sep 17 00:00:00 2001 From: csoler Date: Thu, 8 Nov 2012 19:18:45 +0000 Subject: [PATCH] fixed bug of transfers not handled by turtle router. This was due to a change is values of flags. I added a test to update flags from loaded transfer infos to convert them properly. Just restart your RS and your transfers will perform normally. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5794 b45a01b8-16f6-495d-af2f-9b41ad6348cc --- libretroshare/src/ft/ftcontroller.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/libretroshare/src/ft/ftcontroller.cc b/libretroshare/src/ft/ftcontroller.cc index 82d930df4..dc8990b0c 100644 --- a/libretroshare/src/ft/ftcontroller.cc +++ b/libretroshare/src/ft/ftcontroller.cc @@ -2090,6 +2090,15 @@ bool ftController::loadList(std::list& load) /* This will get stored on a waiting list - until the * config files are fully loaded */ + + // Compatibility with previous versions. + if(rsft->flags & RS_FILE_HINTS_NETWORK_WIDE.toUInt32()) + { + std::cerr << "Ensuring compatibility, replacing RS_FILE_HINTS_NETWORK_WIDE with RS_FILE_REQ_ANONYMOUS_ROUTING" << std::endl; + rsft->flags &= ~RS_FILE_HINTS_NETWORK_WIDE.toUInt32() ; + rsft->flags |= RS_FILE_REQ_ANONYMOUS_ROUTING.toUInt32() ; + } + #ifdef CONTROL_DEBUG std::cerr << "ftController::loadList(): requesting " << rsft->file.name << ", " << rsft->file.hash << ", " << rsft->file.filesize << std::endl ; #endif @@ -2106,6 +2115,7 @@ bool ftController::loadList(std::list& load) std::cerr << "Storing the map in a wait list." << std::endl ; mPendingChunkMaps[rsft->file.hash] = rsft ; + continue ; // i.e. don't delete the item! } else