diff --git a/rse/plugins/org.eclipse.rse.services.ssh/src/org/eclipse/rse/services/ssh/files/SftpFileService.java b/rse/plugins/org.eclipse.rse.services.ssh/src/org/eclipse/rse/services/ssh/files/SftpFileService.java index 85f91c9f0b3..bb7af167f26 100644 --- a/rse/plugins/org.eclipse.rse.services.ssh/src/org/eclipse/rse/services/ssh/files/SftpFileService.java +++ b/rse/plugins/org.eclipse.rse.services.ssh/src/org/eclipse/rse/services/ssh/files/SftpFileService.java @@ -292,8 +292,14 @@ public class SftpFileService extends AbstractFileService implements IFileService if (perms.indexOf('w',1)<=0) { node.setWritable(false); //not writable by anyone } - if (perms.indexOf('x',1)>0) { - node.setExecutable(true); //executable by someone + if (node.isDirectory()) { + if (perms.indexOf('x',1)<=0) { + node.setWritable(false); //directories that are not executable are also not readable + } + } else { + if (perms.indexOf('x',1)>0) { + node.setExecutable(true); //executable by someone + } } if (attrs.getExtended()!=null) { node.setExtendedData(attrs.getExtended());