summaryrefslogtreecommitdiff
path: root/lib/Ultramarine/Serialiser/XML.pm6
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Ultramarine/Serialiser/XML.pm6')
-rw-r--r--lib/Ultramarine/Serialiser/XML.pm615
1 files changed, 9 insertions, 6 deletions
diff --git a/lib/Ultramarine/Serialiser/XML.pm6 b/lib/Ultramarine/Serialiser/XML.pm6
index 2d04427..5da79e9 100644
--- a/lib/Ultramarine/Serialiser/XML.pm6
+++ b/lib/Ultramarine/Serialiser/XML.pm6
@@ -16,12 +16,15 @@ class Ultramarine::Serialiser::XML
}
method serialize(Cro::HTTP::Message $message, $body --> Supply) {
- my $xml = XML::Writer.serialize(
- subsonic-response => [
- :xmlns<http://subsonic.org/restapi>,
- :version<1.13.0>,
- |$body,
- ],
+ my $xml = (
+ qq{<?xml version="1.0" encoding="UTF-8"?>\n} ~
+ XML::Writer.serialize(
+ subsonic-response => [
+ :xmlns<http://subsonic.org/restapi>,
+ :version<1.13.0>,
+ |$body,
+ ],
+ )
).encode('utf-8');
self!set-content-length($message, $xml.bytes);
supply { emit $xml }