On 08 May 2009, at 10:07, Simon Pepping wrote:
Whilst you are both technically correct, I made the change because
backslashes in file URLs used to work until revision 752153 when
Jeremias inadvertantly removed support for this. Whilst this may be
against the URL spec this is a feature that improves usability of the
product. A lot of users out there aren't aware of the details of RFC
2396 and are used to being able to use backslashes in file URLs
(especially on Windows systems). So if we remove support for this
get a few more questions on fop-user.
If it used to work until recently, it should be kept
working. Otherwise, I would very much like to tell users that URIs are
a different thing than path names, and that backward slashes are out.
I'm still not sure I'm comfortable with the change as-is, due to the
a) it is located in FOURIResolver and
b) it is not limited to file URLs,
which basically means that it would also affect other URIs.
Performing the substitution as part of basic URI resolution, for any
protocol or on another platform introduces a genuine bug, while not
resolving paths as URIs on one platform seems just an inconvenience.
The base URL can be specified either as a platform-dependent filespec
(no 'file:' prefix, native separators allowed) or as a genuine URI
(forward slashes as separators).
In the first case, FOP should gladly take care of externalizing the
identifier and prepending the scheme. Using a mixture of both should
definitely be discouraged, IMO.