mirror of
https://github.com/qgis/QGIS.git
synced 2025-11-28 00:06:23 -05:00
Fix subprocess unclosed file
This commit is contained in:
parent
5ef16bf659
commit
c3ad30da34
@ -254,7 +254,7 @@ class Grass7Utils(object):
|
|||||||
loglines.append(Grass7Utils.tr('GRASS GIS 7 execution console output'))
|
loglines.append(Grass7Utils.tr('GRASS GIS 7 execution console output'))
|
||||||
grassOutDone = False
|
grassOutDone = False
|
||||||
command, grassenv = Grass7Utils.prepareGrass7Execution(commands)
|
command, grassenv = Grass7Utils.prepareGrass7Execution(commands)
|
||||||
proc = subprocess.Popen(
|
with subprocess.Popen(
|
||||||
command,
|
command,
|
||||||
shell=True,
|
shell=True,
|
||||||
stdout=subprocess.PIPE,
|
stdout=subprocess.PIPE,
|
||||||
@ -262,8 +262,8 @@ class Grass7Utils(object):
|
|||||||
stderr=subprocess.STDOUT,
|
stderr=subprocess.STDOUT,
|
||||||
universal_newlines=True,
|
universal_newlines=True,
|
||||||
env=grassenv
|
env=grassenv
|
||||||
).stdout
|
) as proc:
|
||||||
for line in iter(proc.readline, ''):
|
for line in iter(proc.stdout.readline, ''):
|
||||||
if 'GRASS_INFO_PERCENT' in line:
|
if 'GRASS_INFO_PERCENT' in line:
|
||||||
try:
|
try:
|
||||||
progress.setPercentage(int(line[len('GRASS_INFO_PERCENT') + 2:]))
|
progress.setPercentage(int(line[len('GRASS_INFO_PERCENT') + 2:]))
|
||||||
@ -283,7 +283,7 @@ class Grass7Utils(object):
|
|||||||
|
|
||||||
if not grassOutDone and outputCommands:
|
if not grassOutDone and outputCommands:
|
||||||
command, grassenv = Grass7Utils.prepareGrass7Execution(outputCommands)
|
command, grassenv = Grass7Utils.prepareGrass7Execution(outputCommands)
|
||||||
proc = subprocess.Popen(
|
with subprocess.Popen(
|
||||||
command,
|
command,
|
||||||
shell=True,
|
shell=True,
|
||||||
stdout=subprocess.PIPE,
|
stdout=subprocess.PIPE,
|
||||||
@ -291,8 +291,8 @@ class Grass7Utils(object):
|
|||||||
stderr=subprocess.STDOUT,
|
stderr=subprocess.STDOUT,
|
||||||
universal_newlines=True,
|
universal_newlines=True,
|
||||||
env=grassenv
|
env=grassenv
|
||||||
).stdout
|
) as proc:
|
||||||
for line in iter(proc.readline, ''):
|
for line in iter(proc.stdout.readline, ''):
|
||||||
if 'GRASS_INFO_PERCENT' in line:
|
if 'GRASS_INFO_PERCENT' in line:
|
||||||
try:
|
try:
|
||||||
progress.setPercentage(int(
|
progress.setPercentage(int(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user