diff --git a/src/formatting/formatters/v2-xml-formatter.ts b/src/formatting/formatters/v2-xml-formatter.ts
index 8b0fcbb..281f631 100644
--- a/src/formatting/formatters/v2-xml-formatter.ts
+++ b/src/formatting/formatters/v2-xml-formatter.ts
@@ -163,6 +163,10 @@ export class V2XmlFormatter implements XmlFormatter {
&& ((options.splitXmlnsOnFormat
&& xml.substr(i, 5).toLowerCase() === "xmlns")
|| options.splitAttributesOnFormat)) {
+
+ // trim the end of output here to ensure there is no trailing whitespace (issue #288)
+ output = this._removeTrailingNonBreakingWhitespace(output);
+
output += `${options.newLine}${this._getIndent(options, indentLevel)}`;
}
diff --git a/src/test/extension.test.ts b/src/test/extension.test.ts
index 31f44e7..dc4e04d 100644
--- a/src/test/extension.test.ts
+++ b/src/test/extension.test.ts
@@ -103,6 +103,10 @@ describe("V2XmlFormatter", () => {
it("should not touch CDATA content", () => {
testFormatter(xmlFormatter, options, "issue-293");
});
+
+ it("should not add trailing whitespace", () => {
+ testFormatter(xmlFormatter, options, "issue-288");
+ });
});
describe("#minifyXml(xml, options)", () => {
diff --git a/src/test/test-data/issue-189.formatted.xml b/src/test/test-data/issue-189.formatted.xml
index b3a3d19..952ff72 100644
--- a/src/test/test-data/issue-189.formatted.xml
+++ b/src/test/test-data/issue-189.formatted.xml
@@ -1,5 +1,5 @@
-
\ No newline at end of file
diff --git a/src/test/test-data/issue-257.formatted.xml b/src/test/test-data/issue-257.formatted.xml
index 842df62..7cfe79e 100644
--- a/src/test/test-data/issue-257.formatted.xml
+++ b/src/test/test-data/issue-257.formatted.xml
@@ -1,5 +1,5 @@
-
diff --git a/src/test/test-data/issue-288.formatted.xml b/src/test/test-data/issue-288.formatted.xml
new file mode 100644
index 0000000..8231c91
--- /dev/null
+++ b/src/test/test-data/issue-288.formatted.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/src/test/test-data/issue-288.unformatted.xml b/src/test/test-data/issue-288.unformatted.xml
new file mode 100644
index 0000000..8231c91
--- /dev/null
+++ b/src/test/test-data/issue-288.unformatted.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
\ No newline at end of file