Skip to content

Commit e6e6788

Browse files
committed
Fix crash when project has no groups and project OWS name equals to
... first layer short name
1 parent 8b508dd commit e6e6788

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

src/server/services/wms/qgswmsrendercontext.cpp

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -167,9 +167,19 @@ QStringList QgsWmsRenderContext::flattenedQueryLayers() const
167167
QStringList _result;
168168
if ( mLayerGroups.contains( name ) )
169169
{
170-
for ( const auto &l : mLayerGroups[ name ] )
170+
const auto &layers { mLayerGroups[ name ] };
171+
for ( const auto &l : layers )
171172
{
172-
_result.append( findLeaves( l->shortName().isEmpty() ? l->name() : l->shortName() ) );
173+
const auto nick { layerNickname( *l ) };
174+
// This handles the case for root (fake) group
175+
if ( mLayerGroups.contains( nick ) )
176+
{
177+
_result.append( name );
178+
}
179+
else
180+
{
181+
_result.append( findLeaves( nick ) );
182+
}
173183
}
174184
}
175185
else
@@ -178,7 +188,8 @@ QStringList QgsWmsRenderContext::flattenedQueryLayers() const
178188
}
179189
return _result;
180190
};
181-
for ( const auto &name : mParameters.queryLayersNickname() )
191+
const auto constNicks { mParameters.queryLayersNickname() };
192+
for ( const auto &name : constNicks )
182193
{
183194
result.append( findLeaves( name ) );
184195
}

0 commit comments

Comments
 (0)