diff --git a/masterfs/src/org/netbeans/modules/masterfs/filebasedfs/fileobjects/BaseFileObj.java b/masterfs/src/org/netbeans/modules/masterfs/filebasedfs/fileobjects/BaseFileObj.java --- a/masterfs/src/org/netbeans/modules/masterfs/filebasedfs/fileobjects/BaseFileObj.java +++ b/masterfs/src/org/netbeans/modules/masterfs/filebasedfs/fileobjects/BaseFileObj.java @@ -261,10 +261,27 @@ extensions.copyFailure(this, to); throw ioe; } + copyLastModifiedTime(to); extensions.copySuccess(this, to); return result; } + private void copyLastModifiedTime(File target) { + if (target == null || this.isFolder()) { + return; + } + Date sourceDate = this.lastModified(); + long sourceDateMillis = sourceDate.getTime(); + if (sourceDateMillis > 0) { + try { + target.setLastModified(sourceDateMillis); + } catch (SecurityException ex) { + LOG.log(Level.INFO, "Cannot set last modified date on " //NOI18N + + target.getAbsolutePath(), ex); + } + } + } + @Override public final FileObject move(FileLock lock, FileObject target, String name, String ext) throws IOException { if (FileUtil.isParentOf(this, target)) {