diff --git a/rse/plugins/org.eclipse.rse.services.dstore/miners/org/eclipse/rse/dstore/universal/miners/UniversalFileSystemMiner.java b/rse/plugins/org.eclipse.rse.services.dstore/miners/org/eclipse/rse/dstore/universal/miners/UniversalFileSystemMiner.java index 1fb69f73803..f0849da8b21 100644 --- a/rse/plugins/org.eclipse.rse.services.dstore/miners/org/eclipse/rse/dstore/universal/miners/UniversalFileSystemMiner.java +++ b/rse/plugins/org.eclipse.rse.services.dstore/miners/org/eclipse/rse/dstore/universal/miners/UniversalFileSystemMiner.java @@ -1851,30 +1851,18 @@ public class UniversalFileSystemMiner extends Miner { { File file = getFileFor(subject); - // permissions - String octalPermissions = null; - String os = System.getProperty("os.name").toLowerCase(); //$NON-NLS-1$ - - if (os.startsWith("linux")){ //$NON-NLS-1$ - // permissions in octal form - octalPermissions = simpleShellCommand("stat -c%a", file); //$NON-NLS-1$ - } - else { - // permissions in form "drwxrwxrwx ..." - String ldStr = simpleShellCommand("ls -ld", file); //$NON-NLS-1$ - - int firstSpace = ldStr.indexOf(' '); - - // permissions in form "rwxrwxrwx" - String permString = ldStr.substring(1, firstSpace); - octalPermissions = alphaPermissionsToOctal(permString); - } - - // user and group + + // permissions in form "drwxrwxrwx ..." String ldStr = simpleShellCommand("ls -ld", file); //$NON-NLS-1$ + StringTokenizer tokenizer = new StringTokenizer(ldStr, " \t"); //$NON-NLS-1$ - tokenizer.nextToken(); - tokenizer.nextToken(); + + // permissions in form "rwxrwxrwx" + String permString = tokenizer.nextToken().substring(1); + String octalPermissions = alphaPermissionsToOctal(permString); + + // user and group + tokenizer.nextToken(); // nothing important String user = tokenizer.nextToken(); // 3rd String group = tokenizer.nextToken(); // 4th