diff --git a/src/core/xfa/bind.js b/src/core/xfa/bind.js index 32f58d54e..6bfb1e806 100644 --- a/src/core/xfa/bind.js +++ b/src/core/xfa/bind.js @@ -25,7 +25,6 @@ import { $getDataValue, $getParent, $getRealChildrenByNameIt, - $global, $hasSettableValue, $indexOf, $insertAt, @@ -158,19 +157,13 @@ class Binder { // (which is the location of global variables). generator = this.data[$getRealChildrenByNameIt]( name, - /* allTransparent = */ false, + /* allTransparent = */ true, /* skipConsumed = */ false ); - while (true) { - match = generator.next().value; - if (!match) { - break; - } - - if (match[$global]) { - return match; - } + match = generator.next().value; + if (match) { + return match; } // Thirdly, try to find it in attributes. @@ -590,6 +583,7 @@ class Binder { dataNode, global ); + if (!found) { break; } diff --git a/src/core/xfa/datasets.js b/src/core/xfa/datasets.js index 33f80ecc9..911a87741 100644 --- a/src/core/xfa/datasets.js +++ b/src/core/xfa/datasets.js @@ -15,7 +15,6 @@ import { $appendChild, - $global, $namespaceId, $nodeName, $onChild, @@ -47,8 +46,6 @@ class Datasets extends XFAObject { child[$namespaceId] === NamespaceIds.signature.id) ) { this[name] = child; - } else { - child[$global] = true; } this[$appendChild](child); } diff --git a/src/core/xfa/xfa_object.js b/src/core/xfa/xfa_object.js index d8fbaa09a..8fd327204 100644 --- a/src/core/xfa/xfa_object.js +++ b/src/core/xfa/xfa_object.js @@ -51,7 +51,6 @@ const $getNextPage = Symbol(); const $getSubformParent = Symbol(); const $getParent = Symbol(); const $getTemplateRoot = Symbol(); -const $global = Symbol(); const $globalData = Symbol(); const $hasSettableValue = Symbol(); const $ids = Symbol(); @@ -1063,7 +1062,6 @@ export { $getRealChildrenByNameIt, $getSubformParent, $getTemplateRoot, - $global, $globalData, $hasSettableValue, $ids, diff --git a/test/pdfs/xfa_bug1718725.pdf.link b/test/pdfs/xfa_bug1718725.pdf.link new file mode 100644 index 000000000..e36bbf6cf --- /dev/null +++ b/test/pdfs/xfa_bug1718725.pdf.link @@ -0,0 +1 @@ +https://bugzilla.mozilla.org/attachment.cgi?id=9229341 diff --git a/test/test_manifest.json b/test/test_manifest.json index c758a7b03..fde6fce0d 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -944,6 +944,14 @@ "lastPage": 2, "type": "eq" }, + { "id": "xfa_bug1718725", + "file": "pdfs/xfa_bug1718725.pdf", + "md5": "09c7a599338ff75491f29a8f1f94454b", + "link": true, + "rounds": 1, + "enableXfa": true, + "type": "eq" + }, { "id": "xfa_bug1718740", "file": "pdfs/xfa_bug1718740.pdf", "md5": "fab4277f2c70fd1edb35f597f5fe6819",