in src/org/jetbrains/tfsIntegration/core/tfs/operations/ApplyGetOperations.java [460:489]
private boolean canDeleteFolder(final File folder) {
File[] files = folder.listFiles();
if (files != null) {
for (File child : files) {
if (child.isFile()) {
if (child.canWrite()) {
return false;
}
else {
boolean childWillBeDeletedAnyway = false;
for (GetOperation operation : myOperations) {
if (operation.getSlocal() != null &&
VersionControlPath.getFile(operation.getSlocal()).equals(child) &&
operation.getTlocal() == null) {
childWillBeDeletedAnyway = true;
break;
}
}
if (!childWillBeDeletedAnyway) {
return false;
}
}
}
else if (!canDeleteFolder(child)) {
return false;
}
}
}
return true;
}