Skip to content

Commit f0d6a9d

Browse files
authoredAug 14, 2023
Merge pull request #53830 from mhugent/server_fix_dxf_layer_filter
Move QgsWmsRestorer in QGIS Server DXF export one level up
2 parents b0c4b0c + 23b42c5 commit f0d6a9d

File tree

2 files changed

+6
-4
lines changed

2 files changed

+6
-4
lines changed
 

‎src/server/services/wms/qgsdxfwriter.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ email : david dot marteau at 3liz dot com
1818
#include "qgsdxfwriter.h"
1919
#include "qgsdxfexport.h"
2020
#include "qgswmsrenderer.h"
21+
#include "qgswmsrestorer.h"
2122

2223
namespace QgsWms
2324
{
@@ -35,6 +36,11 @@ namespace QgsWms
3536

3637
// Write output
3738
QgsRenderer renderer( context );
39+
40+
//Layer settings need to be kept until QgsDxfExport::writeToFile has finished
41+
std::unique_ptr<QgsWmsRestorer> restorer = std::make_unique<QgsWmsRestorer>( context );
42+
restorer.reset( new QgsWmsRestorer( context ) );
43+
3844
std::unique_ptr<QgsDxfExport> dxf = renderer.getDxf();
3945
response.setHeader( "Content-Type", "application/dxf" );
4046
dxf->writeToFile( response.io(), request.wmsParameters().dxfCodec() );

‎src/server/services/wms/qgswmsrenderer.cpp

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1026,10 +1026,6 @@ namespace QgsWms
10261026

10271027
std::unique_ptr<QgsDxfExport> QgsRenderer::getDxf()
10281028
{
1029-
// init layer restorer before doing anything
1030-
std::unique_ptr<QgsWmsRestorer> restorer;
1031-
restorer.reset( new QgsWmsRestorer( mContext ) );
1032-
10331029
// configure layers
10341030
QList<QgsMapLayer *> layers = mContext.layersToRender();
10351031
configureLayers( layers );

0 commit comments

Comments
 (0)
Please sign in to comment.