Skip to content

Commit 15de36a

Browse files
committedMay 2, 2017
[processing] Always require real QgsFields objects in getVectorWriter,
don't allow arrays of fields as inputs
1 parent 43a8680 commit 15de36a

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+131
-95
lines changed
 

‎python/plugins/processing/algs/qgis/BoundingBox.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ def processAlgorithm(self, context, feedback):
6666
layer = QgsProcessingUtils.mapLayerFromString(self.getParameterValue(self.INPUT_LAYER), context)
6767

6868
writer = self.getOutputFromName(
69-
self.OUTPUT_LAYER).getVectorWriter(layer.fields().toList(), QgsWkbTypes.Polygon, layer.crs(), context)
69+
self.OUTPUT_LAYER).getVectorWriter(layer.fields(), QgsWkbTypes.Polygon, layer.crs(), context)
7070

7171
features = QgsProcessingUtils.getFeatures(layer, context)
7272
total = 100.0 / QgsProcessingUtils.featureCount(layer, context)

‎python/plugins/processing/algs/qgis/CheckValidity.py

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,13 @@
3030
from qgis.PyQt.QtGui import QIcon
3131
from qgis.PyQt.QtCore import QVariant
3232

33-
from qgis.core import QgsSettings, QgsGeometry, QgsFeature, QgsField, QgsWkbTypes, QgsProcessingUtils
33+
from qgis.core import (QgsSettings,
34+
QgsGeometry,
35+
QgsFeature,
36+
QgsField,
37+
QgsWkbTypes,
38+
QgsProcessingUtils,
39+
QgsFields)
3440
from processing.core.GeoAlgorithm import GeoAlgorithm
3541
from processing.core.parameters import ParameterVector
3642
from processing.core.parameters import ParameterSelection
@@ -110,18 +116,16 @@ def doCheck(self, context, feedback):
110116
valid_count = 0
111117

112118
invalid_output = self.getOutputFromName(self.INVALID_OUTPUT)
113-
invalid_fields = layer.fields().toList() + [
114-
QgsField(name='_errors',
115-
type=QVariant.String,
116-
len=255)]
119+
invalid_fields = layer.fields()
120+
invalid_fields.append(QgsField('_errors',
121+
QVariant.String,
122+
255))
117123
invalid_writer = invalid_output.getVectorWriter(invalid_fields, layer.wkbType(), layer.crs(), context)
118124
invalid_count = 0
119125

120126
error_output = self.getOutputFromName(self.ERROR_OUTPUT)
121-
error_fields = [
122-
QgsField(name='message',
123-
type=QVariant.String,
124-
len=255)]
127+
error_fields = QgsFields()
128+
error_fields.append(QgsField('message', QVariant.String, 255))
125129
error_writer = error_output.getVectorWriter(error_fields, QgsWkbTypes.Point, layer.crs(), context)
126130
error_count = 0
127131

0 commit comments

Comments
 (0)
Please sign in to comment.