Updated Branches:
  refs/heads/master f3e59624d -> 566e74362

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/566e7436
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/566e7436
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/566e7436

Branch: refs/heads/master
Commit: 566e743624f576ea7d6bc81fc53869eb4191f12c
Parents: f3e5962
Author: Johan Compagner <[email protected]>
Authored: Sun Feb 26 12:56:47 2012 +0100
Committer: Johan Compagner <[email protected]>
Committed: Sun Feb 26 12:59:26 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/566e7436/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 b6bdef6..6dd2d40 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;
@@ -308,7 +309,8 @@ public class PackageResource extends AbstractResource 
implements IStaticCacheabl
                        }
                        finally
                        {
-                               try {
+                               try
+                               {
                                        resourceStream.close();
                                }
                                catch (IOException e)
@@ -404,7 +406,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);
        }
 
        /**
@@ -530,9 +538,10 @@ public class PackageResource extends AbstractResource 
implements IStaticCacheabl
                if (Application.exists())
                {
                        parentFolderPlaceholder = Application.get()
-                                       .getResourceSettings()
-                                       .getParentFolderPlaceholder();
-               } else
+                               .getResourceSettings()
+                               .getParentFolderPlaceholder();
+               }
+               else
                {
                        parentFolderPlaceholder = "..";
                }

Reply via email to