Repository: tapestry-5 Updated Branches: refs/heads/master 92616a625 -> 72d9b1075
TAP5-2129: fix replacement of asset:... URLs in CSS Project: http://git-wip-us.apache.org/repos/asf/tapestry-5/repo Commit: http://git-wip-us.apache.org/repos/asf/tapestry-5/commit/72d9b107 Tree: http://git-wip-us.apache.org/repos/asf/tapestry-5/tree/72d9b107 Diff: http://git-wip-us.apache.org/repos/asf/tapestry-5/diff/72d9b107 Branch: refs/heads/master Commit: 72d9b10750898f2fa9688199b1e890983161770f Parents: 92616a6 Author: Jochen Kemnade <[email protected]> Authored: Fri Apr 24 13:29:04 2015 +0200 Committer: Jochen Kemnade <[email protected]> Committed: Fri Apr 24 13:29:04 2015 +0200 ---------------------------------------------------------------------- .../internal/services/assets/CSSURLRewriter.java | 10 +++++++++- .../internal/services/assets/CSSURLRewriterTests.groovy | 2 +- 2 files changed, 10 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/72d9b107/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/CSSURLRewriter.java ---------------------------------------------------------------------- diff --git a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/CSSURLRewriter.java b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/CSSURLRewriter.java index d478ffe..c578418 100644 --- a/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/CSSURLRewriter.java +++ b/tapestry-core/src/main/java/org/apache/tapestry5/internal/services/assets/CSSURLRewriter.java @@ -151,7 +151,9 @@ public class CSSURLRewriter extends DelegatingSRS // to rewrite it (this is actually rare in Tapestry as you want to use relative URLs to // leverage the asset pipeline. Matcher completeURLMatcher = completeURLPattern.matcher(url); - if (completeURLMatcher.find() && !("asset:".equals(completeURLMatcher.group(1)))) + boolean matchFound = completeURLMatcher.find(); + boolean isAssetUrl = matchFound && "asset:".equals(completeURLMatcher.group(1)); + if (matchFound && !isAssetUrl) { String queryParameters = matcher.group(3); @@ -166,6 +168,12 @@ public class CSSURLRewriter extends DelegatingSRS continue; } + if (isAssetUrl) + { + // strip away the "asset:" prefix + url = url.substring(6); + } + Asset asset = assetSource.getAsset(baseResource, url, null); if (asset != null) http://git-wip-us.apache.org/repos/asf/tapestry-5/blob/72d9b107/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/CSSURLRewriterTests.groovy ---------------------------------------------------------------------- diff --git a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/CSSURLRewriterTests.groovy b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/CSSURLRewriterTests.groovy index e6e6646..b2ddf3e 100644 --- a/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/CSSURLRewriterTests.groovy +++ b/tapestry-core/src/test/groovy/org/apache/tapestry5/internal/services/assets/CSSURLRewriterTests.groovy @@ -139,7 +139,7 @@ body { def asset = newMock Asset expect( - assetSource.getAsset(resource, "asset:context:images/back.png", null) + assetSource.getAsset(resource, "context:images/back.png", null) ).andReturn asset expect(asset.toClientURL()).andReturn "/ctx/images/back.png"
