Skip to content

Commit 8e781b4

Browse files
committed
[server] Fixes segfault on wrong TypeName
Unreported - WFS-T Funded by Boundless
1 parent d75eaff commit 8e781b4

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/server/qgswfsserver.cpp

+9-1
Original file line numberDiff line numberDiff line change
@@ -1474,7 +1474,15 @@ QDomDocument QgsWFSServer::transaction( const QString& requestBody )
14741474
mTypeName = typeNameElem.tagName();
14751475

14761476
layerList = mConfigParser->mapLayerFromTypeName( mTypeName );
1477-
currentLayer = layerList.at( 0 );
1477+
// Could be empty!
1478+
if ( layerList.count() > 0 )
1479+
{
1480+
currentLayer = layerList.at( 0 );
1481+
}
1482+
else
1483+
{
1484+
throw QgsMapServiceException( "RequestNotWellFormed", QString( "Wrong TypeName: %1" ).arg( mTypeName ) );
1485+
}
14781486

14791487
QgsVectorLayer* layer = qobject_cast<QgsVectorLayer*>( currentLayer );
14801488
// it's a vectorlayer and defined by the administrator as a WFS layer

0 commit comments

Comments
 (0)