Skip to content

Commit ad11785

Browse files
committed
Use correct project transform context in transform expression function
Sponsored by ICSM
1 parent 41e0c01 commit ad11785

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/core/expression/qgsexpressionfunction.cpp

+5-4
Original file line numberDiff line numberDiff line change
@@ -4096,7 +4096,7 @@ static QVariant fcnGetGeometry( const QVariantList &values, const QgsExpressionC
40964096
return QVariant();
40974097
}
40984098

4099-
static QVariant fcnTransformGeometry( const QVariantList &values, const QgsExpressionContext *, QgsExpression *parent, const QgsExpressionNodeFunction * )
4099+
static QVariant fcnTransformGeometry( const QVariantList &values, const QgsExpressionContext *context, QgsExpression *parent, const QgsExpressionNodeFunction * )
41004100
{
41014101
QgsGeometry fGeom = QgsExpressionUtils::getGeometry( values.at( 0 ), parent );
41024102
QString sAuthId = QgsExpressionUtils::getStringValue( values.at( 1 ), parent );
@@ -4109,9 +4109,10 @@ static QVariant fcnTransformGeometry( const QVariantList &values, const QgsExpre
41094109
if ( ! d.isValid() )
41104110
return QVariant::fromValue( fGeom );
41114111

4112-
Q_NOWARN_DEPRECATED_PUSH
4113-
QgsCoordinateTransform t( s, d );
4114-
Q_NOWARN_DEPRECATED_POP
4112+
QgsCoordinateTransformContext tContext;
4113+
if ( context )
4114+
tContext = context->variable( QStringLiteral( "_project_transform_context" ) ).value<QgsCoordinateTransformContext>();
4115+
QgsCoordinateTransform t( s, d, tContext );
41154116
try
41164117
{
41174118
if ( fGeom.transform( t ) == 0 )

0 commit comments

Comments
 (0)