diff options
author | Greg Wilkins | 2012-05-22 13:05:29 +0000 |
---|---|---|
committer | Greg Wilkins | 2012-05-22 13:05:29 +0000 |
commit | ca2a040a39216b04f0937360068392c833f6e41a (patch) | |
tree | cb57f03700c0e8e9fcb742a537a64bc0a24a81fd | |
parent | d436400db177763fb84267e7ba92eb19d6b7d629 (diff) | |
download | org.eclipse.jetty.project-ca2a040a39216b04f0937360068392c833f6e41a.tar.gz org.eclipse.jetty.project-ca2a040a39216b04f0937360068392c833f6e41a.tar.xz org.eclipse.jetty.project-ca2a040a39216b04f0937360068392c833f6e41a.zip |
380034 last modified times taken from JarEntry for JarFile resources
-rw-r--r-- | jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java | 4 | ||||
-rw-r--r-- | jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java | 11 |
2 files changed, 15 insertions, 0 deletions
diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java index 785f360aae..95cfaabbf9 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/resource/JarFileResource.java @@ -228,7 +228,11 @@ class JarFileResource extends JarResource public long lastModified() { if (checkConnection() && _file!=null) + { + if (exists() && _entry!=null) + return _entry.getTime(); return _file.lastModified(); + } return -1; } diff --git a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java index aa5c14815a..571e51a7e5 100644 --- a/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java +++ b/jetty-util/src/test/java/org/eclipse/jetty/util/resource/ResourceTest.java @@ -25,6 +25,7 @@ import java.io.InputStream; import java.net.URI; import java.net.URL; import java.util.Arrays; +import java.util.Date; import java.util.HashSet; import java.util.Set; @@ -312,6 +313,16 @@ public class ResourceTest /* ------------------------------------------------------------ */ @Test + public void testJarFileLastModified () + throws Exception + { + String s = "jar:"+__userURL+"TestData/test.zip!/subdir/numbers"; + Resource r = Resource.newResource(s); + assertEquals(971425252000L,r.lastModified()); // Known date value inside zip + } + + /* ------------------------------------------------------------ */ + @Test public void testJarFileCopyToDirectoryTraversal () throws Exception { String s = "jar:"+__userURL+"TestData/extract.zip!/"; |