Fix command line handling for stl files with spaces in the name
parent
5b0e0c9878
commit
1a90feb2ef
|
@ -1135,13 +1135,14 @@ class pronsole(cmd.Cmd):
|
|||
try:
|
||||
import shlex
|
||||
if(settings):
|
||||
param = self.expandcommand(self.settings.sliceoptscommand).encode()
|
||||
param = self.expandcommand(self.settings.sliceoptscommand).replace("\\","\\\\").encode()
|
||||
print "Entering skeinforge settings: ",param
|
||||
subprocess.call(shlex.split(param))
|
||||
else:
|
||||
param = self.expandcommand(self.settings.slicecommand).replace("$s",l[0]).replace("$o",l[0].replace(".stl","_export.gcode").replace(".STL","_export.gcode")).encode()
|
||||
param = self.expandcommand(self.settings.slicecommand).encode()
|
||||
print "Slicing: ",param
|
||||
subprocess.call(shlex.split(param))
|
||||
params=[i.replace("$s",l[0]).replace("$o",l[0].replace(".stl","_export.gcode").replace(".STL","_export.gcode")).encode() for i in shlex.split(param.replace("\\","\\\\").encode())]
|
||||
subprocess.call(params)
|
||||
print "Loading skeined file."
|
||||
self.do_load(l[0].replace(".stl","_export.gcode"))
|
||||
except Exception,e:
|
||||
|
|
|
@ -1257,13 +1257,10 @@ class PronterWindow(wx.Frame,pronsole.pronsole):
|
|||
def skein_func(self):
|
||||
try:
|
||||
import shlex
|
||||
param = self.expandcommand(self.settings.slicecommand).replace("$s",self.filename).replace("$o",self.filename.replace(".stl","_export.gcode").replace(".STL","_export.gcode")).encode()
|
||||
print shlex.split(param.replace("\\","\\\\"))
|
||||
param = self.expandcommand(self.settings.slicecommand).encode()
|
||||
print "Slicing: ",param
|
||||
self.cancelskein=0
|
||||
#p=subprocess.Popen(param,shell=True,bufsize=10,stderr=subprocess.STDOUT,stdout=subprocess.PIPE,close_fds=True)
|
||||
pararray=shlex.split(param.replace("\\","\\\\"))
|
||||
#print pararray
|
||||
pararray=[i.replace("$s",self.filename).replace("$o",self.filename.replace(".stl","_export.gcode").replace(".STL","_export.gcode")).encode() for i in shlex.split(param.replace("\\","\\\\").encode())]
|
||||
#print pararray
|
||||
self.skeinp=subprocess.Popen(pararray,stderr=subprocess.STDOUT,stdout=subprocess.PIPE)
|
||||
while True:
|
||||
o = self.skeinp.stdout.read(1)
|
||||
|
|
Loading…
Reference in New Issue