Skip to content
Permalink
Browse files

Use correct project transform context in transform expression function

Sponsored by ICSM
  • Loading branch information
nyalldawson committed Mar 19, 2019
1 parent 0546228 commit 99052834e731fe8f749c32608abb8a9253a3188a
Showing with 5 additions and 4 deletions.
  1. +5 −4 src/core/expression/qgsexpressionfunction.cpp
@@ -3815,7 +3815,7 @@ static QVariant fcnGetGeometry( const QVariantList &values, const QgsExpressionC
return QVariant();
}

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

Q_NOWARN_DEPRECATED_PUSH
QgsCoordinateTransform t( s, d );
Q_NOWARN_DEPRECATED_POP
QgsCoordinateTransformContext tContext;
if ( context )
tContext = context->variable( QStringLiteral( "_project_transform_context" ) ).value<QgsCoordinateTransformContext>();
QgsCoordinateTransform t( s, d, tContext );
try
{
if ( fGeom.transform( t ) == 0 )

0 comments on commit 9905283

Please sign in to comment.
You can’t perform that action at this time.