aboutsummaryrefslogtreecommitdiffstats
path: root/import_source.py
diff options
context:
space:
mode:
Diffstat (limited to 'import_source.py')
-rw-r--r--import_source.py22
1 files changed, 17 insertions, 5 deletions
diff --git a/import_source.py b/import_source.py
index f40cd38..52dba60 100644
--- a/import_source.py
+++ b/import_source.py
@@ -263,13 +263,25 @@ def validateOutputLayer(lyr : ogr.Layer,
if n != 1:
logging.warning('Output layer "%s" has %d != 1 geometry fields', lyr.GetName(), n)
- geom_type1 = lyr.GetGeomType()
- geom_type2 = options['geometry-type']
- if geom_type1 != geom_type2:
+ iGeomField = 0
+ geomField = layerDefn.GetGeomFieldDefn(iGeomField)
+ geomType = geomField.GetType()
+ logging.debug('Geometry column #%d: name="%s\", type="%s", srs=%s, nullable=%s',
+ iGeomField, geomField.GetName(),
+ ogr.GeometryTypeToName(geomType),
+ '-' if geomField.GetSpatialRef() is None
+ else '"' + geomField.GetSpatialRef().GetName() + '"',
+ bool(geomField.IsNullable()))
+ if geomField.IsNullable():
+ logging.warning('Geometry column #%d "%s" of output layer "%s" is nullable',
+ iGeomField, geomField.GetName(), lyr.GetName())
+
+ geomType2 = options['geometry-type']
+ if geomType != geomType2:
logging.warning('Output layer "%s" has geometry type #%d (%s), expected #%d (%s)',
lyr.GetName(),
- geom_type1, ogr.GeometryTypeToName(geom_type1),
- geom_type2, ogr.GeometryTypeToName(geom_type2))
+ geomType, ogr.GeometryTypeToName(geomType),
+ geomType2, ogr.GeometryTypeToName(geomType2))
ok = False
fields = options.get('fields', None)