From f499dafe13185a3f90a3a99390c44555708309c2 Mon Sep 17 00:00:00 2001 From: Lukas Vogel Date: Thu, 23 Oct 2014 02:57:57 +0200 Subject: [PATCH] Escape newline characters when dispatching data --- mopidy/mpd/dispatcher.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mopidy/mpd/dispatcher.py b/mopidy/mpd/dispatcher.py index 9c2f3471..c48db43a 100644 --- a/mopidy/mpd/dispatcher.py +++ b/mopidy/mpd/dispatcher.py @@ -196,12 +196,18 @@ class MpdDispatcher(object): def _format_lines(self, line): if isinstance(line, dict): - return ['%s: %s' % (key, value) for (key, value) in line.items()] + result = [] + for (key, value) in line.items(): + result.extend(self._escape_newlines('%s: %s' % (key, value))) + return [result] if isinstance(line, tuple): (key, value) = line - return ['%s: %s' % (key, value)] + return [self._escape_newlines('%s: %s' % (key, value))] return [line] + def _escape_newlines(self, text): + return text.replace('\n', '\\n') + class MpdContext(object): """