Browse Source

bug fix: allow back slashes for file URLs as they are commonly used in Windows

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@772672 13f79535-47bb-0310-9956-ffa450edef68
tags/fop-1_0
Chris Bowditch 15 years ago
parent
commit
a19fc7534d

+ 2
- 0
src/java/org/apache/fop/apps/FOURIResolver.java View File

@@ -68,6 +68,8 @@ public class FOURIResolver implements javax.xml.transform.URIResolver {
* @throws MalformedURLException if there's a problem with a file URL
*/
public String checkBaseURL(String base) throws MalformedURLException {
// replace back slash with forward slash to ensure windows file:/// URLS are supported
base = base.replace('\\', '/');
if (!base.endsWith("/")) {
// The behavior described by RFC 3986 regarding resolution of relative
// references may be misleading for normal users:

+ 1
- 0
test/java/org/apache/fop/config/FOURIResolverTestCase.java View File

@@ -39,6 +39,7 @@ public class FOURIResolverTestCase extends TestCase {
System.out.println(resolver.checkBaseURL("./test/config"));
System.out.println(resolver.checkBaseURL("file:test/config"));
System.out.println(resolver.checkBaseURL("fantasy:myconfig"));
System.out.println(resolver.checkBaseURL("file:test\\config\\"));
try {
resolver.checkBaseURL("./doesnotexist");
fail("Expected an exception for a inexistent base directory");

+ 1
- 0
test/java/org/apache/fop/config/UserConfigTestSuite.java View File

@@ -45,6 +45,7 @@ public class UserConfigTestSuite {
suite.addTest(new TestSuite(FontsDirectoryRecursiveTestCase.class));
suite.addTest(new TestSuite(FontsAutoDetectTestCase.class));
suite.addTest(new TestSuite(FontsSubstitutionTestCase.class));
suite.addTest(new TestSuite(FOURIResolverTestCase.class));
//$JUnit-END$
return suite;
}

Loading…
Cancel
Save