gui/applets: escape backslashes in {python} and {ipc_address}

This commit is contained in:
Sebastien Bourdeauducq 2016-02-16 12:52:11 +01:00
parent 6196aaf2f5
commit 2ce3c08697
1 changed files with 4 additions and 2 deletions

View File

@ -110,8 +110,10 @@ class AppletDock(QDockWidgetCloseDetect):
if "{ipc_address}" not in self.command: if "{ipc_address}" not in self.command:
logger.warning("IPC address missing from command for %s", logger.warning("IPC address missing from command for %s",
self.applet_name) self.applet_name)
command = self.command.format(python=sys.executable, command = self.command.format(
ipc_address=self.ipc.get_address()) python=sys.executable.replace("\\", "\\\\"),
ipc_address=self.ipc.get_address().replace("\\", "\\\\")
)
logger.debug("starting command %s for %s", command, self.applet_name) logger.debug("starting command %s for %s", command, self.applet_name)
try: try:
await self.ipc.create_subprocess(*shlex.split(command)) await self.ipc.create_subprocess(*shlex.split(command))