From 29f31b47e385a76ddd07bfc9f2e687ced473f901 Mon Sep 17 00:00:00 2001 From: Uriziel Date: Thu, 13 Jun 2013 13:15:32 +0200 Subject: [PATCH] Fixed mplayer not opening files with spaces or quotes --- syncplay/players/mplayer.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/syncplay/players/mplayer.py b/syncplay/players/mplayer.py index 37f146f..a6e1daf 100644 --- a/syncplay/players/mplayer.py +++ b/syncplay/players/mplayer.py @@ -83,7 +83,7 @@ class MplayerPlayer(BasePlayer): self._setProperty('speed', "{:.2f}".format(value)) def openFile(self, filePath): - self._listener.sendLine('loadfile {}'.format(filePath)) + self._listener.sendLine('loadfile {}'.format(self._quoteArg(filePath))) self._onFileUpdate() def setPosition(self, value): @@ -108,7 +108,12 @@ class MplayerPlayer(BasePlayer): def _getPosition(self): self._getProperty('time_pos') - + + def _quoteArg(self, arg): + arg = arg.replace("'", "\\'") + arg = arg.replace('"', '\\"') + return '"{}"'.format(arg) + def lineReceived(self, line): match = self.RE_ANSWER.match(line) if not match: