Skip to content

Commit cf23d56

Browse files
committed
[OGR] Followup: Add orig_ogc_fid as last field to avoid changing field order
1 parent 386d52d commit cf23d56

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

src/providers/ogr/qgsogrfeatureiterator.cpp

+6-1
Original file line numberDiff line numberDiff line change
@@ -346,7 +346,12 @@ bool QgsOgrFeatureIterator::readFeature( OGRFeatureH fet, QgsFeature &feature )
346346
{
347347
if ( mOrigFidAdded )
348348
{
349-
feature.setId( OGR_F_GetFieldAsInteger64( fet, 0 ) );
349+
OGRFeatureDefnH fdef = OGR_L_GetLayerDefn( ogrLayer );
350+
int lastField = OGR_FD_GetFieldCount( fdef ) - 1;
351+
if ( lastField >= 0 )
352+
feature.setId( OGR_F_GetFieldAsInteger64( fet, lastField ) );
353+
else
354+
feature.setId( OGR_F_GetFID( fet ) );
350355
}
351356
else
352357
{

0 commit comments

Comments
 (0)