mirror of
https://github.com/wxWidgets/Phoenix.git
synced 2025-12-16 01:30:07 +01:00
Enable runcmd to use a list for the command, and have it quote elements as needed.
This commit is contained in:
@@ -781,6 +781,24 @@ def getVcsRev():
|
||||
|
||||
|
||||
def runcmd(cmd, getOutput=False, echoCmd=True, fatal=True):
|
||||
"""
|
||||
Runs a give command-line command, optionally returning the output.
|
||||
"""
|
||||
if isinstance(cmd, list):
|
||||
# add quotes to elements of the command that need it
|
||||
cmd = cmd[:]
|
||||
for idx, item in enumerate(cmd):
|
||||
if ' ' in item or ';' in item:
|
||||
if item[0] not in ['"', "'"]:
|
||||
if '"' in item:
|
||||
item = item.replace('"', '\\"')
|
||||
item = '"{}"'.format(item)
|
||||
cmd[idx] = item
|
||||
|
||||
cmd = ' '.join(cmd)
|
||||
#if echoCmd:
|
||||
# msg(' '.join(cmd))
|
||||
|
||||
if echoCmd:
|
||||
msg(cmd)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user