version 0.1.1
[fms.git] / include / freenet / iindexrequester.h
index 6ba9ae7..8f9e4e5 100644 (file)
@@ -134,13 +134,14 @@ void IIndexRequester<IDTYPE>::InitializeIIndexRequester()
 template <class IDTYPE>\r
 void IIndexRequester<IDTYPE>::Process()\r
 {\r
-       // max is the smaller of the config value or the total number of identities we will request from\r
+       // max is the smaller of the config value or the total number of ids we will request from\r
        long max=m_maxrequests>m_ids.size() ? m_ids.size() : m_maxrequests;\r
 \r
        // try to keep up to max requests going\r
        if(m_requesting.size()<max)\r
        {\r
-               std::map<IDTYPE,bool>::iterator i=m_ids.begin();\r
+               typename std::map<IDTYPE,bool>::iterator i=m_ids.begin();\r
+\r
                while(i!=m_ids.end() && (*i).second==true)\r
                {\r
                        i++;\r
@@ -160,7 +161,7 @@ void IIndexRequester<IDTYPE>::Process()
        // this will recheck for ids every minute\r
        DateTime now;\r
        now.SetToGMTime();\r
-       if(m_tempdate<(now-(1.0/1440.0)))\r
+       if(m_ids.size()==0 && m_tempdate<(now-(1.0/1440.0)))\r
        {\r
                PopulateIDList();\r
                m_tempdate=now;\r
@@ -179,7 +180,7 @@ void IIndexRequester<IDTYPE>::RegisterWithThread(FreenetMasterThread *thread)
 template <class IDTYPE>\r
 void IIndexRequester<IDTYPE>::RemoveFromRequestList(const IDTYPE id)\r
 {\r
-       std::vector<IDTYPE>::iterator i=m_requesting.begin();\r
+       typename std::vector<IDTYPE>::iterator i=m_requesting.begin();\r
        while(i!=m_requesting.end() && (*i)!=id)\r
        {\r
                i++;\r