Skip to content

Commit de8ea4f

Browse files
author
mhugent
committed
Save and read provider encoding from project file. Fixes bug #1310
git-svn-id: http://svn.osgeo.org/qgis/trunk@10546 c8812cc2-4d05-0410-92ff-de0c093fc19c
1 parent a012920 commit de8ea4f

File tree

1 file changed

+15
-8
lines changed

1 file changed

+15
-8
lines changed

src/core/qgsvectorlayer.cpp

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2116,11 +2116,14 @@ bool QgsVectorLayer::readXml( QDomNode & layer_node )
21162116
return false;
21172117
}
21182118

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())
21222121
{
2123-
mDataProvider->setEncoding( encodingNode.toElement().text() );
2122+
QString encodingString = pkeyElem.attribute("encoding");
2123+
if(!encodingString.isEmpty())
2124+
{
2125+
mDataProvider->setEncoding(encodingString);
2126+
}
21242127
}
21252128

21262129
QString errorMsg;
@@ -2252,10 +2255,14 @@ bool QgsVectorLayer::writeXml( QDomNode & layer_node,
22522255
mapLayerNode.setAttribute( "geometry", QGis::qgisVectorGeometryType[geometryType()] );
22532256

22542257
// 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+
}
22592266

22602267
// renderer specific settings
22612268

0 commit comments

Comments
 (0)