Skip to content

Commit

Permalink
Fix #13919, don't reset layer subsetStrings when server python plugins
Browse files Browse the repository at this point in the history
are enabled
  • Loading branch information
nyalldawson committed Feb 22, 2016
1 parent ba7dc0d commit 90a4ae8
Showing 1 changed file with 13 additions and 17 deletions.
30 changes: 13 additions & 17 deletions src/server/qgsowsserver.cpp
Expand Up @@ -28,26 +28,22 @@ void QgsOWSServer::applyAccessControlLayerFilters( QgsMapLayer* mapLayer, QMap<Q
{
if ( QgsVectorLayer* layer = dynamic_cast<QgsVectorLayer*>( mapLayer ) )
{
if ( layer->setSubsetString( "" ) )
QString sql = mAccessControl->extraSubsetString( layer );
if ( !sql.isEmpty() )
{
QString sql = mAccessControl->extraSubsetString( layer );
if ( !sql.isEmpty() )
if ( !originalLayerFilters.contains( layer->id() ) )
{
if ( !originalLayerFilters.contains( layer->id() ) )
{
originalLayerFilters.insert( layer->id(), layer->subsetString() );
}
if ( !layer->subsetString().isEmpty() )
{
sql.prepend( " AND " );
sql.prepend( layer->subsetString() );
}
layer->setSubsetString( sql );
originalLayerFilters.insert( layer->id(), layer->subsetString() );
}
if ( !layer->subsetString().isEmpty() )
{
sql.prepend( " AND " );
sql.prepend( layer->subsetString() );
}
if ( !layer->setSubsetString( sql ) )
{
QgsMessageLog::logMessage( "Layer does not support Subset String" );
}
}
else
{
QgsMessageLog::logMessage( "Layer does not support Subset String" );
}
}
}
Expand Down

1 comment on commit 90a4ae8

@sbrunner
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @nyalldawson :-)

Please sign in to comment.