@@ -121,7 +121,7 @@ QString QgsJSONExporter::exportFeature( const QgsFeature &feature, const QVarian
121
121
122
122
if ( mIncludeAttributes )
123
123
{
124
- QgsFields fields = mLayer . data () ? mLayer ->fields () : feature.fields ();
124
+ QgsFields fields = mLayer ? mLayer ->fields () : feature.fields ();
125
125
126
126
for ( int i = 0 ; i < fields.count (); ++i )
127
127
{
@@ -132,7 +132,7 @@ QString QgsJSONExporter::exportFeature( const QgsFeature &feature, const QVarian
132
132
properties += QLatin1String ( " ,\n " );
133
133
QVariant val = feature.attributes ().at ( i );
134
134
135
- if ( mLayer . data () )
135
+ if ( mLayer )
136
136
{
137
137
QgsEditorWidgetSetup setup = fields.at ( i ).editorWidgetSetup ();
138
138
QgsFieldFormatter *fieldFormatter = QgsApplication::fieldFormatterRegistry ()->fieldFormatter ( setup.type () );
@@ -161,7 +161,7 @@ QString QgsJSONExporter::exportFeature( const QgsFeature &feature, const QVarian
161
161
}
162
162
163
163
// related attributes
164
- if ( mLayer . data () && mIncludeRelatedAttributes )
164
+ if ( mLayer && mIncludeRelatedAttributes )
165
165
{
166
166
QList< QgsRelation > relations = QgsProject::instance ()->relationManager ()->referencedRelations ( mLayer .data () );
167
167
Q_FOREACH ( const QgsRelation &relation, relations )
@@ -177,11 +177,13 @@ QString QgsJSONExporter::exportFeature( const QgsFeature &feature, const QVarian
177
177
{
178
178
QgsFeatureIterator it = childLayer->getFeatures ( req );
179
179
QVector<QVariant> attributeWidgetCaches;
180
- for ( int fieldIndex = 0 ; fieldIndex < childLayer->fields ().count (); ++fieldIndex )
180
+ int fieldIndex = 0 ;
181
+ Q_FOREACH ( const QgsField &field, childLayer->fields () )
181
182
{
182
- QgsEditorWidgetSetup setup = childLayer-> fields (). at ( fieldIndex ) .editorWidgetSetup ();
183
+ QgsEditorWidgetSetup setup = field .editorWidgetSetup ();
183
184
QgsFieldFormatter *fieldFormatter = QgsApplication::fieldFormatterRegistry ()->fieldFormatter ( setup.type () );
184
185
attributeWidgetCaches.append ( fieldFormatter->createCache ( childLayer, fieldIndex, setup.config () ) );
186
+ fieldIndex++;
185
187
}
186
188
187
189
QgsFeature relatedFet;
0 commit comments