Skip to content

Commit fcbf4cb

Browse files
dgoedkoopnyalldawson
authored andcommittedJan 21, 2018
Set missing expression context in some filters
In some filters the expression context was not set, so that references to variables would only work in the preview, but not when actually using them.
1 parent 9451f2e commit fcbf4cb

File tree

3 files changed

+6
-0
lines changed

3 files changed

+6
-0
lines changed
 

‎src/core/composer/qgsatlascomposition.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,8 @@ int QgsAtlasComposition::updateFeatures()
137137
// select all features with all attributes
138138
QgsFeatureRequest req;
139139

140+
req.setExpressionContext( expressionContext );
141+
140142
std::unique_ptr<QgsExpression> filterExpression;
141143
if ( mFilterFeatures && !mFeatureFilter.isEmpty() )
142144
{

‎src/core/fieldformatter/qgsvaluerelationfieldformatter.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,8 @@ QgsValueRelationFieldFormatter::ValueRelationCache QgsValueRelationFieldFormatte
118118
request.setSubsetOfAttributes( QgsAttributeList() << ki << vi );
119119
if ( !config.value( QStringLiteral( "FilterExpression" ) ).toString().isEmpty() )
120120
{
121+
QgsExpressionContext context( QgsExpressionContextUtils::globalProjectLayerScopes( layer ) );
122+
request.setExpressionContext( context );
121123
request.setFilterExpression( config.value( QStringLiteral( "FilterExpression" ) ).toString() );
122124
}
123125

‎src/core/layout/qgslayoutatlas.cpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,8 @@ int QgsLayoutAtlas::updateFeatures()
220220
// select all features with all attributes
221221
QgsFeatureRequest req;
222222

223+
req.setExpressionContext( expressionContext );
224+
223225
mFilterParserError.clear();
224226
if ( mFilterFeatures && !mFilterExpression.isEmpty() )
225227
{

0 commit comments

Comments
 (0)
Please sign in to comment.