summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-05-01 14:01:32 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-05-01 14:01:32 +0000
commitd0b485cba0c2f83a0db3a2e6300a95a3d75d75b7 (patch)
treefcbeddc4ae739004df5f66c2b4c956688d824fe1 /src
parenta8b05c3c1a55469ed890beaef2018bb95169a5af (diff)
2009-05-01 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Avoid circular reference between RequestGroup and AdaptiveURISelector * src/RequestGroupMan.cc * src/AdaptiveURISelector.cc * src/AdaptiveURISelector.h
Diffstat (limited to 'src')
-rw-r--r--src/AdaptiveURISelector.cc3
-rw-r--r--src/AdaptiveURISelector.h5
-rw-r--r--src/RequestGroupMan.cc2
3 files changed, 5 insertions, 5 deletions
diff --git a/src/AdaptiveURISelector.cc b/src/AdaptiveURISelector.cc
index a9a224b2..ff168625 100644
--- a/src/AdaptiveURISelector.cc
+++ b/src/AdaptiveURISelector.cc
@@ -61,8 +61,7 @@ namespace aria2 {
*/
AdaptiveURISelector::AdaptiveURISelector
-(const SharedHandle<ServerStatMan>& serverStatMan,
- const SharedHandle<RequestGroup>& requestGroup):
+(const SharedHandle<ServerStatMan>& serverStatMan, RequestGroup* requestGroup):
_serverStatMan(serverStatMan),
_requestGroup(requestGroup),
_nbConnections(1),
diff --git a/src/AdaptiveURISelector.h b/src/AdaptiveURISelector.h
index 08284550..6804b9cc 100644
--- a/src/AdaptiveURISelector.h
+++ b/src/AdaptiveURISelector.h
@@ -48,7 +48,8 @@ class Logger;
class AdaptiveURISelector:public URISelector {
private:
SharedHandle<ServerStatMan> _serverStatMan;
- SharedHandle<RequestGroup> _requestGroup;
+ // No need to delete _requestGroup
+ RequestGroup* _requestGroup;
unsigned int _nbServerToEvaluate;
unsigned int _nbConnections;
@@ -73,7 +74,7 @@ private:
std::string getBestMirror(const std::deque<std::string>& uris) const;
public:
AdaptiveURISelector(const SharedHandle<ServerStatMan>& serverStatMan,
- const SharedHandle<RequestGroup>& requestGroup);
+ RequestGroup* requestGroup);
virtual ~AdaptiveURISelector();
diff --git a/src/RequestGroupMan.cc b/src/RequestGroupMan.cc
index 01539e48..a2029e44 100644
--- a/src/RequestGroupMan.cc
+++ b/src/RequestGroupMan.cc
@@ -286,7 +286,7 @@ void RequestGroupMan::configureRequestGroup
} else if(uriSelectorValue == V_ADAPTIVE) {
requestGroup->setURISelector
(SharedHandle<URISelector>(new AdaptiveURISelector(_serverStatMan,
- requestGroup)));
+ requestGroup.get())));
}
}