[processing] don't warn about different CRS's if algorithm has only one

input (fix #10964)
This commit is contained in:
Alexander Bruy 2014-08-06 15:55:53 +03:00
parent 03d6425038
commit 24e89a4712

View File

@ -372,22 +372,17 @@ class GeoAlgorithm:
"""It checks that all input layers use the same CRS. If so,
returns True. False otherwise.
"""
crs = None
layers = dataobjects.getAllLayers()
crsList = []
for param in self.parameters:
if isinstance(param, (ParameterRaster, ParameterVector,
ParameterMultipleInput)):
if param.value:
inputlayers = param.value.split(';')
for inputlayer in inputlayers:
for layer in layers:
if layer.source() == inputlayer:
if crs is None:
crs = layer.crs()
else:
if crs != layer.crs():
return False
return True
layers = param.value.split(';')
for item in layers:
crs = dataobjects.getObject(item).crs()
if crs not in crsList:
crsList.append(crs)
return len(crsList) == 1
def addOutput(self, output):
# TODO: check that name does not exist