Updated Branches: refs/heads/wicket-1.5.x 5faeb11b0 -> b6c203d5d
make sure that the guard is called with the real resolved path Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/b6c203d5 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/b6c203d5 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/b6c203d5 Branch: refs/heads/wicket-1.5.x Commit: b6c203d5d8b55f3331cf46d94888b5d66e905ee6 Parents: 5faeb11 Author: Johan Compagner <[email protected]> Authored: Sun Feb 26 12:56:47 2012 +0100 Committer: Johan Compagner <[email protected]> Committed: Sun Feb 26 12:56:47 2012 +0100 ---------------------------------------------------------------------- .../wicket/request/resource/PackageResource.java | 19 +++++++++++---- 1 files changed, 14 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/b6c203d5/wicket-core/src/main/java/org/apache/wicket/request/resource/PackageResource.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/request/resource/PackageResource.java b/wicket-core/src/main/java/org/apache/wicket/request/resource/PackageResource.java index 626fd9b..50cb7aa 100644 --- a/wicket-core/src/main/java/org/apache/wicket/request/resource/PackageResource.java +++ b/wicket-core/src/main/java/org/apache/wicket/request/resource/PackageResource.java @@ -32,6 +32,7 @@ import org.apache.wicket.settings.IResourceSettings; import org.apache.wicket.util.io.IOUtils; import org.apache.wicket.util.lang.Packages; import org.apache.wicket.util.lang.WicketObjects; +import org.apache.wicket.util.resource.IFixedLocationResourceStream; import org.apache.wicket.util.resource.IResourceStream; import org.apache.wicket.util.resource.ResourceStreamNotFoundException; import org.apache.wicket.util.resource.locator.IResourceStreamLocator; @@ -300,7 +301,8 @@ public class PackageResource extends AbstractResource implements IStaticCacheabl } finally { - try { + try + { resourceStream.close(); } catch (IOException e) @@ -411,7 +413,13 @@ public class PackageResource extends AbstractResource implements IStaticCacheabl .getResourceSettings() .getPackageResourceGuard(); - return guard.accept(scope, path); + String realPath = path; + IResourceStream resourceStream = getResourceStream(); + if (resourceStream instanceof IFixedLocationResourceStream) + { + realPath = ((IFixedLocationResourceStream)resourceStream).locationAsString(); + } + return guard.accept(scope, realPath); } /** @@ -537,9 +545,10 @@ public class PackageResource extends AbstractResource implements IStaticCacheabl if (Application.exists()) { parentFolderPlaceholder = Application.get() - .getResourceSettings() - .getParentFolderPlaceholder(); - } else + .getResourceSettings() + .getParentFolderPlaceholder(); + } + else { parentFolderPlaceholder = ".."; }
