Bug #4756
closedFailure XTTE3090 with on-no-match=deep-skip
100%
Description
XSLT3 test case mode-1437a is failing XTTE3090 (no context node when evaluating template).
The reason is that the code implementing deep-skip (which for a document node actually invokes templates on the children) is setting the current iterator to a Join iterator without wrapping it in a Tracker. This means that the value of "current" is undefined, triggering the error condition.
Updated by Michael Kay about 4 years ago
- Status changed from New to Resolved
- Applies to JS Branch 2.0, Trunk added
- Fix Committed on JS Branch 2.0 added
Fixed. Changed the deep-skip code (mode.js#128) to
case K.DOCUMENT_NODE:
case K.DOCUMENT_FRAGMENT_NODE:
const c2 = context.newContext(false);
c2.focus = Iter.Tracker(Axis.child(item));
mode.applyTemplates(c2, out);
break;
Updated by Community Admin over 3 years ago
- Applies to JS Branch 2 added
- Applies to JS Branch deleted (
2.0, Trunk)
Updated by Community Admin over 3 years ago
- Fix Committed on JS Branch 2 added
- Fix Committed on JS Branch deleted (
2.0)
Updated by Debbie Lockett over 3 years ago
- Status changed from Resolved to Closed
- % Done changed from 0 to 100
- Fixed in JS Release set to Saxon-JS 2.1
Bug fix applied in the Saxon-JS 2.1 maintenance release.
Please register to edit this issue
Also available in: Atom PDF Tracking page