aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Williamson <mike@zwobble.org>2017-05-30 11:33:42 +0100
committerMichael Williamson <mike@zwobble.org>2017-05-30 11:33:42 +0100
commite7d903d254f0feecc4db3adc4d4d3e20aa61bd85 (patch)
treee94d8335eb2f6ecbd26af9522bd958b5aea72f4e
parent9545703e5e3cd3f0cbce363eda1d2c92e4eb0da0 (diff)
Set target frame to null when empty string
-rw-r--r--lib/docx/body-reader.js2
-rw-r--r--test/docx/body-reader.tests.js9
2 files changed, 10 insertions, 1 deletions
diff --git a/lib/docx/body-reader.js b/lib/docx/body-reader.js
index 71c9855..7b7f6f2 100644
--- a/lib/docx/body-reader.js
+++ b/lib/docx/body-reader.js
@@ -209,7 +209,7 @@ function BodyReader(options) {
var anchor = element.attributes["w:anchor"];
return readXmlElements(element.children).map(function(children) {
function create(options) {
- var targetFrame = element.attributes["w:tgtFrame"];
+ var targetFrame = element.attributes["w:tgtFrame"] || null;
return new documents.Hyperlink(
children,
diff --git a/test/docx/body-reader.tests.js b/test/docx/body-reader.tests.js
index f866e9b..4632e3b 100644
--- a/test/docx/body-reader.tests.js
+++ b/test/docx/body-reader.tests.js
@@ -955,6 +955,15 @@ test("w:hyperlink", {
var result = readXmlElementValue(hyperlinkXml);
assertThat(result, hasProperties({targetFrame: "_blank"}));
},
+
+ "empty target frame is ignored": function() {
+ var hyperlinkXml = new XmlElement("w:hyperlink", {
+ "w:anchor": "Introduction",
+ "w:tgtFrame": ""
+ });
+ var result = readXmlElementValue(hyperlinkXml);
+ assertThat(result, hasProperties({targetFrame: null}));
+ }
});
test("w:br without explicit type is read as line break", function() {