[QGIS Commit] r11438 - trunk/qgis/src/providers/spatialite
svn_qgis at osgeo.org
svn_qgis at osgeo.org
Wed Aug 19 11:02:46 EDT 2009
Author: jef
Date: 2009-08-19 11:02:46 -0400 (Wed, 19 Aug 2009)
New Revision: 11438
Modified:
trunk/qgis/src/providers/spatialite/qgsspatialiteprovider.cpp
Log:
fix spatialite provider (fixes #1883 & 1884)
Modified: trunk/qgis/src/providers/spatialite/qgsspatialiteprovider.cpp
===================================================================
--- trunk/qgis/src/providers/spatialite/qgsspatialiteprovider.cpp 2009-08-19 14:34:43 UTC (rev 11437)
+++ trunk/qgis/src/providers/spatialite/qgsspatialiteprovider.cpp 2009-08-19 15:02:46 UTC (rev 11438)
@@ -269,7 +269,7 @@
// iterate attributes
bool fetched = false;
int nAttr = 1;
- for ( QgsAttributeList::const_iterator it = mAttributesToFetch.constBegin(); it != mAttributesToFetch.constEnd(); it++ )
+ for ( QgsAttributeList::const_iterator it = fetchAttributes.constBegin(); it != fetchAttributes.constEnd(); it++ )
{
if ( nAttr == ic )
{
@@ -952,7 +952,7 @@
{
// binding a TEXT value
QString txt = it->toString();
- int len = txt.length();
+ int len = txt.toUtf8().length() + 1;
char *vl = new char [len];
strcpy( vl, txt.toUtf8().constData() );
sqlite3_bind_text( stmt, ++ia, vl, len, SQLITE_TRANSIENT );
@@ -967,8 +967,11 @@
// performing actual row insert
ret = sqlite3_step( stmt );
+
if ( ret == SQLITE_DONE || ret == SQLITE_ROW )
- ;
+ {
+ numberFeatures++;
+ }
else
{
// some unexpected error occurred
@@ -1054,7 +1057,9 @@
// performing actual row deletion
ret = sqlite3_step( stmt );
if ( ret == SQLITE_DONE || ret == SQLITE_ROW )
- ;
+ {
+ numberFeatures--;
+ }
else
{
// some unexpected error occurred
More information about the QGIS-commit
mailing list