(zzz) i2psnark: Remove saved partial when halted, don't save partial when halted
This commit is contained in:
@ -237,6 +237,8 @@ public class PeerCoordinator implements PeerListener
|
|||||||
peer.disconnect();
|
peer.disconnect();
|
||||||
removePeerFromPieces(peer);
|
removePeerFromPieces(peer);
|
||||||
}
|
}
|
||||||
|
// delete any saved orphan partial piece
|
||||||
|
savedRequest = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void connected(Peer peer)
|
public void connected(Peer peer)
|
||||||
@ -263,6 +265,7 @@ public class PeerCoordinator implements PeerListener
|
|||||||
{
|
{
|
||||||
if (_log.shouldLog(Log.WARN))
|
if (_log.shouldLog(Log.WARN))
|
||||||
_log.warn("Already connected to: " + peer + ": " + old + ", inactive for " + old.getInactiveTime());
|
_log.warn("Already connected to: " + peer + ": " + old + ", inactive for " + old.getInactiveTime());
|
||||||
|
// toDisconnect = peer to get out of synchronized(peers)
|
||||||
peer.disconnect(false); // Don't deregister this connection/peer.
|
peer.disconnect(false); // Don't deregister this connection/peer.
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -357,7 +360,6 @@ public class PeerCoordinator implements PeerListener
|
|||||||
while (it.hasNext())
|
while (it.hasNext())
|
||||||
{
|
{
|
||||||
Peer peer = (Peer)it.next();
|
Peer peer = (Peer)it.next();
|
||||||
boolean remove = false;
|
|
||||||
if (peer.isChoking() && peer.isInterested())
|
if (peer.isChoking() && peer.isInterested())
|
||||||
{
|
{
|
||||||
count++;
|
count++;
|
||||||
@ -691,6 +693,8 @@ public class PeerCoordinator implements PeerListener
|
|||||||
private long savedRequestTime = 0;
|
private long savedRequestTime = 0;
|
||||||
public void savePeerPartial(PeerState state)
|
public void savePeerPartial(PeerState state)
|
||||||
{
|
{
|
||||||
|
if (halted)
|
||||||
|
return;
|
||||||
Request req = state.getPartialRequest();
|
Request req = state.getPartialRequest();
|
||||||
if (req == null)
|
if (req == null)
|
||||||
return;
|
return;
|
||||||
@ -791,7 +795,7 @@ public class PeerCoordinator implements PeerListener
|
|||||||
*/
|
*/
|
||||||
public void markUnrequested(Peer peer)
|
public void markUnrequested(Peer peer)
|
||||||
{
|
{
|
||||||
if (peer.state == null)
|
if (halted || peer.state == null)
|
||||||
return;
|
return;
|
||||||
int[] arr = peer.state.getRequestedPieces();
|
int[] arr = peer.state.getRequestedPieces();
|
||||||
for (int i = 0; arr[i] >= 0; i++)
|
for (int i = 0; arr[i] >= 0; i++)
|
||||||
|
Reference in New Issue
Block a user