Fix crashes when rendering with SVG symbols that are missing
The crashes would happen after some time when browsing the map, especially when size of SVGs is in map units. This was due to wrong removal of deleted cache entries where cache entry key would be different from SVG file's path, thus not removing the entry that got deleted. Now explicitly keeping the lookup key in the entry to make sure this does not happen. Related issues: #9959, #8883 (cherry picked from commit febadfe)
Fix incorrect values returned by certain color ramps
(cherry-picked from 27ee8ee)
Fix saturation range ignored for random color ramps
(cherry-picked from 5690402)
Fix random color ramps returning invalid QColors for value of 1.0
(cherry-picked from 1d2b4cb)
Fix bad alloc when styling raster with random color ramp (fix #13112)
(cherry-picked from 688ac16)
Fix invalid color could be returned by QgsRandomColorsV2
(cherry-picked from 3c45b23)
Add missing color ramp methods and conversions to sip
(cherry-picked from 56a48ed)
Fix memory leaks in geometry expression functions
(cherry-picked from cd7592d)
If user clicks cancel while browsing for file then don't clear
the existing filename in the vector open file dialog (cherry-picked from 1a91ae8)
postgres provider: disable editing of existing features when ctid is key
(cherry picked from commit 2844005)
[SERVER][BUGFIX] Layer order from group
If custom order is not enabled and a group is requested, layers was added in the DOM element order. The default endering order is the reverse. To fix this issue, QgsWMSProjectParser::addLayersFromGroup has to read group element children from end (bottom) to start (top).
[SERVER][BUGFIX] Use cache if styleName is EMPTY_STYLE_NAME
The QGIS Server layer cache is used to store layer with default style, but in QgsWMSProjectParser::mapLayerFromStyle layers are not cached if the style is not empty. In WMS, default and empty style is the same and the variable EMPTY_STYLE_NAME is here for this. The fix uses EMPTY_STYLE_NAME to use the cache.
fix filtered features number over the window title
cherry-picked from 7065762
[composer] Remember last used atlas image export folder
(cherry-picked from 4bc606c)
Fix broken QgsFeatureStore::setFields method
Was setting fields only on temporary copies of the features, not the stored features themselves (cherry-picked from 910cb01)
[Server][BUGFIX] Resolve relative pathes (SVGMArker, Netcdf, etc)
QGIS-Server has some trouble to resolve relative pathes. For example, SVGMarker path and NETCDF datasource are not resolved in QGIS Server unlike in QGIS Desktop. To resolve relative path for SVGMarker, the class QgsSombolLayerV2Utils is used and it based on QgsProject::instance()->fileName(). To resolve relative path for NETCDF datasource and other GDAL datasources, the class QgsMapLayer is used and it based on QgsProject::instance()->readPath( filename ). To fix the issue, the QgsProject instance fileName is set in the QgsServerProjectParser constructor.
[BUGFIX][QGIS-Server] Restricted layers and layer id as name are inco…
…mpatible If the user checks 'used layer id as name' and specifies 'restricted layers', the restriction is not applied. To fix it, I add the layer ids to the restricted layers list.
[BUGFIX][QGIS Server] Add layer coordinate transforms before setting …
…destination CRS If the layer_coordinate_transform_info child of mapcanvas has not been well saved, the destinationCrs is not well applied and we get a blank image. To resolve this issue, we just have to add layer coordinate transforms to the map renderer before setting the destination CRS.
[BUGFIX][QGIS Server] Clean Headers
With https://github.com/3liz/qgis-wfsOutputExtension, I found that QGIS Server Headers are not always well formed. An extra line can be added at the end. In the commit a9c830e from @mhugent, I found the fix.
[BUGFIX] Set default units to mm in exportSld
The default units in QgsMapRenderer is Millimeters. The default units in SLD is Pixel but exportSld does not convert all millimeters in pixels. We notes this bug by comparing default QGS Server rendering and rendering with the SLD generated by QGIS. To resolve it, we just have to add units to the document element.
[BUGFIX] Set default units to mm in GetStyles
The default units in QgsMapRenderer is Millimeters. The default units in SLD is Pixel but exportSld does not convert all millimeters in pixels. We notes this bug by comparing default QGS Server rendering and rendering with the SLD generated by QGIS. To resolve it, we just have to add units to the document element.
[BUGFIX][QGIS Server] Laye order from group in GetPrint
Since QGIS 2.8, QGIS Server rendered layers form group in reverted order. Conflicts: src/server/qgswmsconfigparser.cpp
render polygons with outline using drawPath (fixes #13343)
(cherry picked from commit 08185c9)
Properly set invalid topology layer as invalid
Fixes #13781 (crash)
[BUGFIX] 13118 QGIS Server - WFS - GeoJSON and escaping line breaks
Line breaks are not properly handled in GeoJSON results when making GetFeature requests. Line breaks should be replaced by \\n.
fix windows build (followup 2175e7a)
(cherry picked from commit 6e1df49)
Update [BUGFIX] 13118 QGIS Server - WFS - GeoJSON and escaping line b…
…reaks Enhance replace, thanks to @nyalldawson Enhance format, thanks to @jef-n fixes #13118
[BUGFIX] Fix endpoint swap on negative marker line offset
Add missing /Transfer/s to setSubSymbol
(cherry-picked from dc0639c)
[labelling] set full rule of qpainterpath for text/buffer rendering
(cherry-picked from 2856981)
Allow escape to cancel drawing new features
(cherry-picked from e2dc8bf)
Allow transparency for point displacement circle/label colors
(cherry-picked from 8f0ed61)
- add docs - add missing SIP bindings - remove unnecessary cast from double->float->double - add unit tests (cherry-picked from f0a2fc1)
Fix symbols drawn multiple times in rule based renderer if symbol
has multiple layers (cherry-picked from a0d7653)
Fix snapping options dialog not correctly initialised when loading pr…
…ojects (cherry-picked from 0da9306)
Fix fill and outline color for svg markers sometimes enabled
when SVG file does not support parameters (Cherry-picked from 3aa6c4f)