File tree Expand file tree Collapse file tree 1 file changed +15
-8
lines changed Expand file tree Collapse file tree 1 file changed +15
-8
lines changed Original file line number Diff line number Diff line change @@ -2116,11 +2116,14 @@ bool QgsVectorLayer::readXml( QDomNode & layer_node )
2116
2116
return false ;
2117
2117
}
2118
2118
2119
- // read provider encoding
2120
- QDomNode encodingNode = layer_node.namedItem ( " encoding" );
2121
- if ( ! encodingNode.isNull () && mDataProvider )
2119
+ QDomElement pkeyElem = pkeyNode.toElement ();
2120
+ if (!pkeyElem.isNull ())
2122
2121
{
2123
- mDataProvider ->setEncoding ( encodingNode.toElement ().text () );
2122
+ QString encodingString = pkeyElem.attribute (" encoding" );
2123
+ if (!encodingString.isEmpty ())
2124
+ {
2125
+ mDataProvider ->setEncoding (encodingString);
2126
+ }
2124
2127
}
2125
2128
2126
2129
QString errorMsg;
@@ -2252,10 +2255,14 @@ bool QgsVectorLayer::writeXml( QDomNode & layer_node,
2252
2255
mapLayerNode.setAttribute ( " geometry" , QGis::qgisVectorGeometryType[geometryType ()] );
2253
2256
2254
2257
// add provider node
2255
- QDomElement provider = document.createElement ( " provider" );
2256
- QDomText providerText = document.createTextNode ( providerType () );
2257
- provider.appendChild ( providerText );
2258
- layer_node.appendChild ( provider );
2258
+ if (mDataProvider )
2259
+ {
2260
+ QDomElement provider = document.createElement ( " provider" );
2261
+ provider.setAttribute (" encoding" , mDataProvider ->encoding ());
2262
+ QDomText providerText = document.createTextNode ( providerType () );
2263
+ provider.appendChild ( providerText );
2264
+ layer_node.appendChild ( provider );
2265
+ }
2259
2266
2260
2267
// renderer specific settings
2261
2268
You can’t perform that action at this time.
0 commit comments