Project

Profile

Help

Bug #5184

closed

URIResolver.resolve() - order of parameters

Added by Michael Kay over 2 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
Internals
Sprint/Milestone:
-
Start date:
2021-12-07
Due date:
% Done:

100%

Estimated time:
Legacy ID:
Applies to branch:
11, trunk
Fix Committed on Branch:
trunk
Fixed in Maintenance Release:
Platforms:
.NET, Java

Description

SaxonCS includes an interface `Saxon.Ejavax.xml.transform.URIResolver which is intended to emulate the Java interface java.xml.transform.URIResolver. However, it's only method is declared as

Source resolve(string baseUri, string relativeUri);

whereas the corresponding method in Java is

Source resolve(String href, String base)

The reversal of the parameter order leads to the URIResolver being called incorrectly. It's rather surprising that this didn't lead to test failures, but this is probably because the test suites mainly use absolute URIs.

I'm going to correct this by changing the parameter order to match what it is in Java.

Actions #1

Updated by Michael Kay over 2 years ago

In fact it appears that in 11.0, all the calls of resolve(), and all the implementations of the method, assumed the Java order of arguments despite the incorrect declaration, so the bug may be asymptomatic until it comes to user-defined implementations of the interface.

Actions #2

Updated by Michael Kay over 2 years ago

  • Status changed from New to Resolved
  • Applies to branch trunk added
  • Fix Committed on Branch trunk added

The change has been made.

Actions #3

Updated by O'Neil Delpratt about 2 years ago

  • % Done changed from 0 to 100
  • Fixed in Maintenance Release 11.1 added
  • Platforms Java added

Bug fix applied in the Saxon 11.1 release.

Actions #4

Updated by O'Neil Delpratt about 2 years ago

  • Status changed from Resolved to Closed

Please register to edit this issue

Also available in: Atom PDF