summaryrefslogtreecommitdiff
path: root/server/server/speedtest.cpp
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss@sss.chaoslab.ru>2012-03-24 19:24:20 +0200
committerGluzskiy Alexandr <sss@sss.chaoslab.ru>2012-03-24 19:24:20 +0200
commit3faa907f6e8597ffae5b9f7db8567fe5fab8c9f6 (patch)
tree6a78ddda5b611cbe19822fb35afbdf82a673d359 /server/server/speedtest.cpp
parent165a86baaeaa1219ea8e2a892e1ac90596038a66 (diff)
more accurate speed calculation
Diffstat (limited to 'server/server/speedtest.cpp')
-rw-r--r--server/server/speedtest.cpp22
1 files changed, 11 insertions, 11 deletions
diff --git a/server/server/speedtest.cpp b/server/server/speedtest.cpp
index d1d9876..8a2c289 100644
--- a/server/server/speedtest.cpp
+++ b/server/server/speedtest.cpp
@@ -88,21 +88,21 @@ size_t speedtest::test(config::proxy_entry_base *p)
else
speed = chunk.size;
}
- p->speed_list.push_back(speed);
- }
- while(p->speed_list.size() > 10)
- p->speed_list.pop_front();
- if(!p->speed_list.empty())
- {
if(speed)
{
- size_t speed_sum = 0;
- for(std::list<size_t>::iterator i = p->speed_list.begin(), end = p->speed_list.end(); i != end; ++i)
- speed_sum += *i;
- speed = speed_sum/p->speed_list.size();
+ p->speed_list.push_back(speed);
+ while(p->speed_list.size() > 10)
+ p->speed_list.pop_front();
+ if(!p->speed_list.empty())
+ {
+ size_t speed_sum = 0;
+ for(std::list<size_t>::iterator i = p->speed_list.begin(), end = p->speed_list.end(); i != end; ++i)
+ speed_sum += *i;
+ speed = speed_sum/p->speed_list.size();
+ }
}
- p->speed = speed;
}
+ p->speed = speed;
return speed;
}