diff options
-rw-r--r-- | lib/Ultramarine/Serialiser/XML.pm6 | 15 |
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 } |