Commit 02dafd46 authored by Pierre-Antoine Rouby's avatar Pierre-Antoine Rouby
Browse files

Solver: Fix case of space into solver path.

parent 06b6d594
No related merge requests found
Pipeline #49027 passed with stages
in 5 minutes and 55 seconds
Showing with 36 additions and 11 deletions
+36 -11
......@@ -189,9 +189,18 @@ class AbstractSolver(object):
logger.debug(f"! {cmd}")
cmd = cmd.split()
exe = cmd[0]
args = cmd[1:]
if cmd[0] == "\"":
# Command line executable path is between " char
cmd = cmd.split("\"")
exe = cmd[1]
args = "\"".join(cmd[3:]).split(" ")
else:
# We suppose the command line executable path as no space char
cmd = cmd.replace("\ ", "&_&").split(" ")
exe = cmd[0].replace("&_&", "\ ")
args = cmd[1:]
logger.info(f"! {exe} {args}")
if not os.path.exists(exe):
error = f"[ERROR] Path {exe} do not exists"
......@@ -215,11 +224,20 @@ class AbstractSolver(object):
cmd = cmd.replace("@input", self.input_param())
cmd = cmd.replace("@dir", self._process.workingDirectory())
logger.debug(f"! {cmd}")
logger.info(f"! {cmd}")
cmd = cmd.split()
exe = cmd[0]
args = cmd[1:]
if cmd[0] == "\"":
# Command line executable path is between " char
cmd = cmd.split("\"")
exe = cmd[1]
args = "\"".join(cmd[3:]).split(" ")
else:
# We suppose the command line executable path as no space char
cmd = cmd.replace("\ ", "&_&").split(" ")
exe = cmd[0].replace("&_&", "\ ")
args = cmd[1:]
logger.info(f"! {exe} {args}")
if not os.path.exists(exe):
error = f"[ERROR] Path {exe} do not exists"
......@@ -246,9 +264,16 @@ class AbstractSolver(object):
logger.debug(f"! {cmd}")
cmd = cmd.split()
exe = cmd[0]
args = cmd[1:]
if cmd[0] == "\"":
# Command line executable path is between " char
cmd = cmd.split("\"")
exe = cmd[1]
args = "\"".join(cmd[3:]).split(" ")
else:
# We suppose the command line executable path as no space char
cmd = cmd.replace("\ ", "&_&").split(" ")
exe = cmd[0].replace("&_&", "\ ")
args = cmd[1:]
if not os.path.exists(exe):
error = f"[ERROR] Path {exe} do not exists"
......
......@@ -254,7 +254,7 @@ class Config(SQL):
ctor = solver_type_list["mage8"]
new = ctor("default-mage")
new._description = "Default PAMHYR mage 8 version"
new._cmd_solver = f"""@install_dir/mage/mage{"" if posix else ".exe"} -fp=1 @input"""
new._cmd_solver = f""""@install_dir/mage/mage{"" if posix else ".exe"}" -fp=1 @input"""
self._solvers.append(new)
# Meshing tool
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment