diff --git a/releng/org.eclipse.rse.build/maps/rse.map b/releng/org.eclipse.rse.build/maps/rse.map index 62de2e0f945..550a40822c3 100644 --- a/releng/org.eclipse.rse.build/maps/rse.map +++ b/releng/org.eclipse.rse.build/maps/rse.map @@ -26,7 +26,7 @@ plugin@org.eclipse.rse.core=v201003151933,:pserver:anonymous:none@dev.eclipse.or plugin@org.eclipse.rse.doc.isv=v201005221130,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/doc/org.eclipse.rse.doc.isv plugin@org.eclipse.rse.doc.user=v200905272300,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/doc/org.eclipse.rse.doc.user plugin@org.eclipse.rse.dstore.security=v201003010830,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/plugins/org.eclipse.rse.dstore.security -plugin@org.eclipse.rse.efs=v201003010830,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/plugins/org.eclipse.rse.efs +plugin@org.eclipse.rse.efs=v201005261830,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/plugins/org.eclipse.rse.efs plugin@org.eclipse.rse.efs.ui=v201003010830,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/plugins/org.eclipse.rse.efs.ui plugin@org.eclipse.rse.examples.daytime=v200905272300,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/examples/org.eclipse.rse.examples.daytime plugin@org.eclipse.rse.examples.tutorial=v200905272300,:pserver:anonymous:none@dev.eclipse.org:/cvsroot/dsdp,,org.eclipse.tm.rse/examples/org.eclipse.rse.examples.tutorial diff --git a/rse/plugins/org.eclipse.rse.efs/src/org/eclipse/rse/internal/efs/RSEFileStoreImpl.java b/rse/plugins/org.eclipse.rse.efs/src/org/eclipse/rse/internal/efs/RSEFileStoreImpl.java index e98b229d999..1905bc4d42d 100644 --- a/rse/plugins/org.eclipse.rse.efs/src/org/eclipse/rse/internal/efs/RSEFileStoreImpl.java +++ b/rse/plugins/org.eclipse.rse.efs/src/org/eclipse/rse/internal/efs/RSEFileStoreImpl.java @@ -34,6 +34,7 @@ * David McKnight (IBM) - [287185] EFS provider should interpret the URL host component as RSE connection name rather than a hostname * David McKnight (IBM) - [291738] [efs] repeated queries to RSEFileStoreImpl.fetchInfo() in short time-span should be reduced * Szymon Brandys (IBM) - [303092] [efs] RSE portion to deal with FileSystemResourceManager makes second call to efs provider on exception due to cancel + * Martin Oberhuber (Wind River) - [314496] [efs] Symlink target not reported ********************************************************************************/ package org.eclipse.rse.internal.efs; @@ -549,20 +550,26 @@ public class RSEFileStoreImpl extends FileStore String classification = (remoteFile==null) ? null : remoteFile.getClassification(); FileInfo info = new FileInfo(_store.getName()); - if (remoteFile == null || !remoteFile.exists()) { + if (remoteFile == null) { info.setExists(false); + return info; + } + if (classification!=null && classification.startsWith("broken symbolic link")) { //$NON-NLS-1$ //broken symbolic link handling - if (classification!=null && classification.startsWith("broken symbolic link")) { //$NON-NLS-1$ - info.setAttribute(EFS.ATTRIBUTE_SYMLINK, true); - int i1 = classification.indexOf('\''); - if (i1>0) { - int i2 = classification.indexOf('´'); - if (i2>i1) { - info.setStringAttribute(EFS.ATTRIBUTE_LINK_TARGET, classification.substring(i1+1,i2)); - } + info.setExists(false); + info.setLastModified(remoteFile.getLastModified()); + info.setAttribute(EFS.ATTRIBUTE_SYMLINK, true); + int i1 = classification.indexOf('`'); + if (i1>0) { + int i2 = classification.indexOf('\''); + if (i2>i1) { + info.setStringAttribute(EFS.ATTRIBUTE_LINK_TARGET, classification.substring(i1+1,i2)); } } return info; + } else if (!remoteFile.exists()) { + info.setExists(false); + return info; } info.setExists(true);