diff --git a/src/main/scala/scala/xml/NamespaceBinding.scala b/src/main/scala/scala/xml/NamespaceBinding.scala index 8409c41e1..cb97c1d06 100644 --- a/src/main/scala/scala/xml/NamespaceBinding.scala +++ b/src/main/scala/scala/xml/NamespaceBinding.scala @@ -73,7 +73,7 @@ case class NamespaceBinding(prefix: String, uri: String, parent: NamespaceBindin } private def doBuildString(sb: StringBuilder, stop: NamespaceBinding) { - if ((this == null) || (this eq stop)) return // contains? + if (List(null, stop, TopScope).contains(this)) return val s = " xmlns%s=\"%s\"".format( (if (prefix != null) ":" + prefix else ""), diff --git a/src/test/scala/scala/xml/XMLTest.scala b/src/test/scala/scala/xml/XMLTest.scala index 01431baf1..ff59de52b 100644 --- a/src/test/scala/scala/xml/XMLTest.scala +++ b/src/test/scala/scala/xml/XMLTest.scala @@ -162,6 +162,15 @@ class XMLTest { } } + @UnitTest + def namespacesWithNestedXmls: Unit = { + val foo = + val bar = {foo} + val expected = """""" + val actual = bar.toString + assertEquals(expected, actual) + } + @UnitTest def validationOfElements: Unit = { val vtor = new scala.xml.dtd.ElementValidator();