rendered paste body***************
*** 30,36 ****
import java.util.Map;
import java.util.ResourceBundle;
import java.util.StringTokenizer;
import javax.net.ServerSocketFactory;
import javax.net.SocketFactory;
import javax.net.ssl.HandshakeCompletedEvent;
--- 30,38 ----
import java.util.Map;
import java.util.ResourceBundle;
import java.util.StringTokenizer;
+ import org.drftpd.SFVFile.SFVStatus;
+ import org.drftpd.remotefile.*;
import javax.net.ServerSocketFactory;
import javax.net.SocketFactory;
import javax.net.ssl.HandshakeCompletedEvent;
***************
*** 1547,1552 ****
if (!targetFileName.toLowerCase().endsWith(".sfv")) {
try {
long sfvChecksum = targetDir.lookupSFVFile().getChecksum(targetFileName);
if (checksum == sfvChecksum) {
response.addComment("checksum match: SLAVE/SFV:" +
--- 1549,1563 ----
if (!targetFileName.toLowerCase().endsWith(".sfv")) {
try {
long sfvChecksum = targetDir.lookupSFVFile().getChecksum(targetFileName);
+ SFVStatus sfvstatus = targetDir.lookupSFVFile().getStatus();
+ LinkedRemoteFile parentDir = targetDir.getParentFile();
+ if (sfvstatus.getMissing() != 0) {
+ if(!parentDir.lookupNonExistingFile("(incomplete)-"+targetDir.getName(),false ).exists())
+ parentDir.addFile(new StaticRemoteFile("(incomplete)-"+targetDir.getName(),null,targetDir.getName()));
+ } else {
+ if(parentDir.lookupNonExistingFile("(incomplete)-"+targetDir.getName(),false ).exists())
+ parentDir.lookupFile("(incomplete)-"+targetDir.getName(),false).delete();
+ }
if (checksum == sfvChecksum) {
response.addComment("checksum match: SLAVE/SFV:" +