i2psnark: Don't announce more than torrent size as downloaded amount

This commit is contained in:
zzz
2013-11-10 15:20:07 +00:00
parent 68f67b7c8e
commit 1b9d870b91

View File

@ -473,6 +473,9 @@ public class TrackerClient implements Runnable {
{ {
long uploaded = coordinator.getUploaded(); long uploaded = coordinator.getUploaded();
long downloaded = coordinator.getDownloaded(); long downloaded = coordinator.getDownloaded();
long len = snark.getTotalLength();
if (len > 0 && downloaded > len)
downloaded = len;
left = coordinator.getLeft(); left = coordinator.getLeft();
String event; String event;
if (!tr.started) { if (!tr.started) {
@ -508,6 +511,7 @@ public class TrackerClient implements Runnable {
info.getSeedCount() > 100 && info.getSeedCount() > 100 &&
coordinator.getPeerCount() <= 0 && coordinator.getPeerCount() <= 0 &&
_util.getContext().clock().now() > _startedOn + 2*60*60*1000 && _util.getContext().clock().now() > _startedOn + 2*60*60*1000 &&
snark.getTotalLength() > 0 &&
uploaded >= 2 * snark.getTotalLength()) { uploaded >= 2 * snark.getTotalLength()) {
if (_log.shouldLog(Log.WARN)) if (_log.shouldLog(Log.WARN))
_log.warn("Auto stopping " + snark.getBaseName()); _log.warn("Auto stopping " + snark.getBaseName());
@ -715,6 +719,9 @@ public class TrackerClient implements Runnable {
_log.debug("Running unannounce " + _threadName + " to " + tr.announce); _log.debug("Running unannounce " + _threadName + " to " + tr.announce);
long uploaded = coordinator.getUploaded(); long uploaded = coordinator.getUploaded();
long downloaded = coordinator.getDownloaded(); long downloaded = coordinator.getDownloaded();
long len = snark.getTotalLength();
if (len > 0 && downloaded > len)
downloaded = len;
long left = coordinator.getLeft(); long left = coordinator.getLeft();
try try
{ {