Call trytransferbypeer on non-matching file length.
authorfredrik <fredrik@959494ce-11ee-0310-bf91-de5d638817bd>
Wed, 9 Nov 2005 03:07:48 +0000 (03:07 +0000)
committerfredrik <fredrik@959494ce-11ee-0310-bf91-de5d638817bd>
Wed, 9 Nov 2005 03:07:48 +0000 (03:07 +0000)
git-svn-id: svn+ssh://svn.dolda2000.com/srv/svn/repos/src/doldaconnect@488 959494ce-11ee-0310-bf91-de5d638817bd

daemon/fnet-dc.c

index d295148..d77179d 100644 (file)
@@ -1615,6 +1615,7 @@ static void startul(struct dcpeer *peer)
 static void cmd_filelength(struct socket *sk, struct dcpeer *peer, char *cmd, char *args)
 {
     int size;
+    struct transfer *transfer;
     
     if(peer->transfer == NULL)
     {
@@ -1625,7 +1626,9 @@ static void cmd_filelength(struct socket *sk, struct dcpeer *peer, char *cmd, ch
     if(peer->transfer->size != size)
     {
        transfersetsize(peer->transfer, size);
+       transfer = peer->transfer;
        freedcpeer(peer);
+       trytransferbypeer(transfer->fnet, transfer->peerid);
        return;
     }
     startdl(peer);