diff --git a/src/core/symbology/qgssymbollayerutils.cpp b/src/core/symbology/qgssymbollayerutils.cpp index e5fea43241c..c7bdc0ce8d4 100644 --- a/src/core/symbology/qgssymbollayerutils.cpp +++ b/src/core/symbology/qgssymbollayerutils.cpp @@ -736,6 +736,11 @@ QIcon QgsSymbolLayerUtils::symbolLayerPreviewIcon( QgsSymbolLayer *layer, QgsUni painter.begin( &pixmap ); painter.setRenderHint( QPainter::Antialiasing ); QgsRenderContext renderContext = QgsRenderContext::fromQPainter( &painter ); + // build a minimal expression context + QgsExpressionContext expContext; + expContext.appendScopes( QgsExpressionContextUtils::globalProjectLayerScopes( nullptr ) ); + renderContext.setExpressionContext( expContext ); + QgsSymbolRenderContext symbolContext( renderContext, u, 1.0, false, nullptr, nullptr, QgsFields(), scale ); layer->drawPreviewIcon( symbolContext, size ); painter.end();