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 @@ -2102,11 +2102,14 @@ bool QgsVectorLayer::readXml( QDomNode & layer_node )
2102
2102
return false ;
2103
2103
}
2104
2104
2105
- // read provider encoding
2106
- QDomNode encodingNode = layer_node.namedItem ( " encoding" );
2107
- if ( ! encodingNode.isNull () && mDataProvider )
2105
+ QDomElement pkeyElem = pkeyNode.toElement ();
2106
+ if (!pkeyElem.isNull ())
2108
2107
{
2109
- mDataProvider ->setEncoding ( encodingNode.toElement ().text () );
2108
+ QString encodingString = pkeyElem.attribute (" encoding" );
2109
+ if (!encodingString.isEmpty ())
2110
+ {
2111
+ mDataProvider ->setEncoding (encodingString);
2112
+ }
2110
2113
}
2111
2114
2112
2115
QString errorMsg;
@@ -2226,10 +2229,14 @@ bool QgsVectorLayer::writeXml( QDomNode & layer_node,
2226
2229
mapLayerNode.setAttribute ( " geometry" , QGis::qgisVectorGeometryType[geometryType ()] );
2227
2230
2228
2231
// add provider node
2229
- QDomElement provider = document.createElement ( " provider" );
2230
- QDomText providerText = document.createTextNode ( providerType () );
2231
- provider.appendChild ( providerText );
2232
- layer_node.appendChild ( provider );
2232
+ if (mDataProvider )
2233
+ {
2234
+ QDomElement provider = document.createElement ( " provider" );
2235
+ provider.setAttribute (" encoding" , mDataProvider ->encoding ());
2236
+ QDomText providerText = document.createTextNode ( providerType () );
2237
+ provider.appendChild ( providerText );
2238
+ layer_node.appendChild ( provider );
2239
+ }
2233
2240
2234
2241
// renderer specific settings
2235
2242
You can’t perform that action at this time.
0 commit comments