@@ -833,7 +833,11 @@ void QgsSpatiaLiteProvider::fetchConstraints()
833
833
834
834
int ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
835
835
if ( ret != SQLITE_OK )
836
- goto error;
836
+ {
837
+ handleError ( sql, errMsg );
838
+ return ;
839
+ }
840
+
837
841
if ( rows < 1 )
838
842
;
839
843
else
@@ -874,17 +878,6 @@ void QgsSpatiaLiteProvider::fetchConstraints()
874
878
constraints.setConstraint ( QgsFieldConstraints::ConstraintNotNull, QgsFieldConstraints::ConstraintOriginProvider );
875
879
mAttributeFields [ fieldIdx ].setConstraints ( constraints );
876
880
}
877
-
878
- return ;
879
-
880
- error:
881
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ), tr ( " SpatiaLite" ) );
882
- // unexpected error
883
- if ( errMsg )
884
- {
885
- sqlite3_free ( errMsg );
886
- }
887
-
888
881
}
889
882
890
883
void QgsSpatiaLiteProvider::insertDefaultValue ( int fieldIndex, QString defaultVal )
@@ -918,6 +911,22 @@ void QgsSpatiaLiteProvider::insertDefaultValue( int fieldIndex, QString defaultV
918
911
}
919
912
}
920
913
914
+ void QgsSpatiaLiteProvider::handleError ( const QString& sql, char * errorMessage, bool rollback )
915
+ {
916
+ QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errorMessage ? errorMessage : tr ( " unknown cause" ) ), tr ( " SpatiaLite" ) );
917
+ // unexpected error
918
+ if ( errorMessage )
919
+ {
920
+ sqlite3_free ( errorMessage );
921
+ }
922
+
923
+ if ( rollback )
924
+ {
925
+ // ROLLBACK after some previous error
926
+ ( void )sqlite3_exec ( mSqliteHandle , " ROLLBACK" , nullptr , nullptr , nullptr );
927
+ }
928
+ }
929
+
921
930
void QgsSpatiaLiteProvider::loadFields ()
922
931
{
923
932
int ret;
@@ -943,7 +952,10 @@ void QgsSpatiaLiteProvider::loadFields()
943
952
944
953
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
945
954
if ( ret != SQLITE_OK )
946
- goto error;
955
+ {
956
+ handleError ( sql, errMsg );
957
+ return ;
958
+ }
947
959
if ( rows < 1 )
948
960
;
949
961
else
@@ -1044,16 +1056,6 @@ void QgsSpatiaLiteProvider::loadFields()
1044
1056
}
1045
1057
1046
1058
updatePrimaryKeyCapabilities ();
1047
-
1048
- return ;
1049
-
1050
- error:
1051
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ), tr ( " SpatiaLite" ) );
1052
- // unexpected error
1053
- if ( errMsg )
1054
- {
1055
- sqlite3_free ( errMsg );
1056
- }
1057
1059
}
1058
1060
1059
1061
@@ -4019,7 +4021,6 @@ QString createIndexName( QString tableName, QString field )
4019
4021
bool QgsSpatiaLiteProvider::createAttributeIndex ( int field )
4020
4022
{
4021
4023
char *errMsg = nullptr ;
4022
- bool toCommit = false ;
4023
4024
4024
4025
if ( field < 0 || field >= mAttributeFields .count () )
4025
4026
return false ;
@@ -4030,10 +4031,9 @@ bool QgsSpatiaLiteProvider::createAttributeIndex( int field )
4030
4031
int ret = sqlite3_exec ( mSqliteHandle , " BEGIN" , nullptr , nullptr , &errMsg );
4031
4032
if ( ret != SQLITE_OK )
4032
4033
{
4033
- // some error occurred
4034
- goto abort ;
4034
+ handleError ( sql, errMsg );
4035
+ return false ;
4035
4036
}
4036
- toCommit = true ;
4037
4037
4038
4038
fieldName = mAttributeFields .at ( field ).name ();
4039
4039
@@ -4044,49 +4044,32 @@ bool QgsSpatiaLiteProvider::createAttributeIndex( int field )
4044
4044
ret = sqlite3_exec ( mSqliteHandle , sql.toUtf8 ().constData (), nullptr , nullptr , &errMsg );
4045
4045
if ( ret != SQLITE_OK )
4046
4046
{
4047
- // some error occurred
4048
- goto abort ;
4047
+ handleError ( sql, errMsg, true );
4048
+ return false ;
4049
4049
}
4050
4050
4051
4051
ret = sqlite3_exec ( mSqliteHandle , " COMMIT" , nullptr , nullptr , &errMsg );
4052
4052
if ( ret != SQLITE_OK )
4053
4053
{
4054
- // some error occurred
4055
- goto abort ;
4054
+ handleError ( sql, errMsg, true );
4055
+ return false ;
4056
4056
}
4057
4057
4058
4058
return true ;
4059
-
4060
- abort:
4061
- pushError ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ) );
4062
- if ( errMsg )
4063
- {
4064
- sqlite3_free ( errMsg );
4065
- }
4066
-
4067
- if ( toCommit )
4068
- {
4069
- // ROLLBACK after some previous error
4070
- ( void )sqlite3_exec ( mSqliteHandle , " ROLLBACK" , nullptr , nullptr , nullptr );
4071
- }
4072
-
4073
- return false ;
4074
4059
}
4075
4060
4076
4061
bool QgsSpatiaLiteProvider::deleteFeatures ( const QgsFeatureIds &id )
4077
4062
{
4078
4063
sqlite3_stmt *stmt = nullptr ;
4079
4064
char *errMsg = nullptr ;
4080
- bool toCommit = false ;
4081
4065
QString sql;
4082
4066
4083
4067
int ret = sqlite3_exec ( mSqliteHandle , " BEGIN" , nullptr , nullptr , &errMsg );
4084
4068
if ( ret != SQLITE_OK )
4085
4069
{
4086
- // some error occurred
4087
- goto abort ;
4070
+ handleError ( sql, errMsg );
4071
+ return false ;
4088
4072
}
4089
- toCommit = true ;
4090
4073
4091
4074
sql = QStringLiteral ( " DELETE FROM %1 WHERE %2=?" ).arg ( quotedIdentifier ( mTableName ), quotedIdentifier ( mPrimaryKey ) );
4092
4075
@@ -4120,40 +4103,25 @@ bool QgsSpatiaLiteProvider::deleteFeatures( const QgsFeatureIds &id )
4120
4103
const char *err = sqlite3_errmsg ( mSqliteHandle );
4121
4104
errMsg = ( char * ) sqlite3_malloc (( int ) strlen ( err ) + 1 );
4122
4105
strcpy ( errMsg, err );
4123
- goto abort;
4106
+ handleError ( sql, errMsg, true );
4107
+ return false ;
4124
4108
}
4125
4109
}
4126
4110
sqlite3_finalize ( stmt );
4127
4111
4128
4112
ret = sqlite3_exec ( mSqliteHandle , " COMMIT" , nullptr , nullptr , &errMsg );
4129
4113
if ( ret != SQLITE_OK )
4130
4114
{
4131
- // some error occurred
4132
- goto abort ;
4115
+ handleError ( sql, errMsg, true );
4116
+ return false ;
4133
4117
}
4134
4118
4135
4119
return true ;
4136
-
4137
- abort:
4138
- pushError ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ) );
4139
- if ( errMsg )
4140
- {
4141
- sqlite3_free ( errMsg );
4142
- }
4143
-
4144
- if ( toCommit )
4145
- {
4146
- // ROLLBACK after some previous error
4147
- ( void )sqlite3_exec ( mSqliteHandle , " ROLLBACK" , nullptr , nullptr , nullptr );
4148
- }
4149
-
4150
- return false ;
4151
4120
}
4152
4121
4153
4122
bool QgsSpatiaLiteProvider::addAttributes ( const QList<QgsField> &attributes )
4154
4123
{
4155
4124
char *errMsg = nullptr ;
4156
- bool toCommit = false ;
4157
4125
QString sql;
4158
4126
4159
4127
if ( attributes.isEmpty () )
@@ -4162,10 +4130,9 @@ bool QgsSpatiaLiteProvider::addAttributes( const QList<QgsField> &attributes )
4162
4130
int ret = sqlite3_exec ( mSqliteHandle , " BEGIN" , nullptr , nullptr , &errMsg );
4163
4131
if ( ret != SQLITE_OK )
4164
4132
{
4165
- // some error occurred
4166
- goto abort ;
4133
+ handleError ( sql, errMsg );
4134
+ return false ;
4167
4135
}
4168
- toCommit = true ;
4169
4136
4170
4137
for ( QList<QgsField>::const_iterator iter = attributes.begin (); iter != attributes.end (); ++iter )
4171
4138
{
@@ -4176,16 +4143,16 @@ bool QgsSpatiaLiteProvider::addAttributes( const QList<QgsField> &attributes )
4176
4143
ret = sqlite3_exec ( mSqliteHandle , sql.toUtf8 ().constData (), nullptr , nullptr , &errMsg );
4177
4144
if ( ret != SQLITE_OK )
4178
4145
{
4179
- // some error occurred
4180
- goto abort ;
4146
+ handleError ( sql, errMsg, true );
4147
+ return false ;
4181
4148
}
4182
4149
}
4183
4150
4184
4151
ret = sqlite3_exec ( mSqliteHandle , " COMMIT" , nullptr , nullptr , &errMsg );
4185
4152
if ( ret != SQLITE_OK )
4186
4153
{
4187
- // some error occurred
4188
- goto abort ;
4154
+ handleError ( sql, errMsg, true );
4155
+ return false ;
4189
4156
}
4190
4157
#ifdef SPATIALITE_VERSION_GE_4_0_0
4191
4158
sql = QStringLiteral ( " UPDATE geometry_columns_statistics set last_verified = 0 WHERE f_table_name=\" %1\" AND f_geometry_column=\" %2\" ;" )
@@ -4202,27 +4169,11 @@ bool QgsSpatiaLiteProvider::addAttributes( const QList<QgsField> &attributes )
4202
4169
loadFields ();
4203
4170
4204
4171
return true ;
4205
-
4206
- abort:
4207
- pushError ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ) );
4208
- if ( errMsg )
4209
- {
4210
- sqlite3_free ( errMsg );
4211
- }
4212
-
4213
- if ( toCommit )
4214
- {
4215
- // ROLLBACK after some previous error
4216
- ( void )sqlite3_exec ( mSqliteHandle , " ROLLBACK" , nullptr , nullptr , nullptr );
4217
- }
4218
-
4219
- return false ;
4220
4172
}
4221
4173
4222
4174
bool QgsSpatiaLiteProvider::changeAttributeValues ( const QgsChangedAttributesMap &attr_map )
4223
4175
{
4224
4176
char *errMsg = nullptr ;
4225
- bool toCommit = false ;
4226
4177
QString sql;
4227
4178
4228
4179
if ( attr_map.isEmpty () )
@@ -4231,10 +4182,9 @@ bool QgsSpatiaLiteProvider::changeAttributeValues( const QgsChangedAttributesMap
4231
4182
int ret = sqlite3_exec ( mSqliteHandle , " BEGIN" , nullptr , nullptr , &errMsg );
4232
4183
if ( ret != SQLITE_OK )
4233
4184
{
4234
- // some error occurred
4235
- goto abort ;
4185
+ handleError ( sql, errMsg );
4186
+ return false ;
4236
4187
}
4237
- toCommit = true ;
4238
4188
4239
4189
for ( QgsChangedAttributesMap::const_iterator iter = attr_map.begin (); iter != attr_map.end (); ++iter )
4240
4190
{
@@ -4300,50 +4250,33 @@ bool QgsSpatiaLiteProvider::changeAttributeValues( const QgsChangedAttributesMap
4300
4250
ret = sqlite3_exec ( mSqliteHandle , sql.toUtf8 ().constData (), nullptr , nullptr , &errMsg );
4301
4251
if ( ret != SQLITE_OK )
4302
4252
{
4303
- // some error occurred
4304
- goto abort ;
4253
+ handleError ( sql, errMsg, true );
4254
+ return false ;
4305
4255
}
4306
4256
}
4307
4257
4308
4258
ret = sqlite3_exec ( mSqliteHandle , " COMMIT" , nullptr , nullptr , &errMsg );
4309
4259
if ( ret != SQLITE_OK )
4310
4260
{
4311
- // some error occurred
4312
- goto abort ;
4261
+ handleError ( sql, errMsg, true );
4262
+ return false ;
4313
4263
}
4314
4264
4315
4265
return true ;
4316
-
4317
- abort:
4318
- pushError ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ) );
4319
- if ( errMsg )
4320
- {
4321
- sqlite3_free ( errMsg );
4322
- }
4323
-
4324
- if ( toCommit )
4325
- {
4326
- // ROLLBACK after some previous error
4327
- ( void )sqlite3_exec ( mSqliteHandle , " ROLLBACK" , nullptr , nullptr , nullptr );
4328
- }
4329
-
4330
- return false ;
4331
4266
}
4332
4267
4333
4268
bool QgsSpatiaLiteProvider::changeGeometryValues ( const QgsGeometryMap &geometry_map )
4334
4269
{
4335
4270
sqlite3_stmt *stmt = nullptr ;
4336
4271
char *errMsg = nullptr ;
4337
- bool toCommit = false ;
4338
4272
QString sql;
4339
4273
4340
4274
int ret = sqlite3_exec ( mSqliteHandle , " BEGIN" , nullptr , nullptr , &errMsg );
4341
4275
if ( ret != SQLITE_OK )
4342
4276
{
4343
- // some error occurred
4344
- goto abort ;
4277
+ handleError ( sql, errMsg );
4278
+ return false ;
4345
4279
}
4346
- toCommit = true ;
4347
4280
4348
4281
sql =
4349
4282
QStringLiteral ( " UPDATE %1 SET %2=GeomFromWKB(?, %3) WHERE %4=?" )
@@ -4387,33 +4320,19 @@ bool QgsSpatiaLiteProvider::changeGeometryValues( const QgsGeometryMap &geometry
4387
4320
const char *err = sqlite3_errmsg ( mSqliteHandle );
4388
4321
errMsg = ( char * ) sqlite3_malloc (( int ) strlen ( err ) + 1 );
4389
4322
strcpy ( errMsg, err );
4390
- goto abort;
4323
+ handleError ( sql, errMsg, true );
4324
+ return false ;
4391
4325
}
4392
4326
}
4393
4327
sqlite3_finalize ( stmt );
4394
4328
4395
4329
ret = sqlite3_exec ( mSqliteHandle , " COMMIT" , nullptr , nullptr , &errMsg );
4396
4330
if ( ret != SQLITE_OK )
4397
4331
{
4398
- // some error occurred
4399
- goto abort ;
4332
+ handleError ( sql, errMsg, true );
4333
+ return false ;
4400
4334
}
4401
4335
return true ;
4402
-
4403
- abort:
4404
- pushError ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ) );
4405
- if ( errMsg )
4406
- {
4407
- sqlite3_free ( errMsg );
4408
- }
4409
-
4410
- if ( toCommit )
4411
- {
4412
- // ROLLBACK after some previous error
4413
- ( void )sqlite3_exec ( mSqliteHandle , " ROLLBACK" , nullptr , nullptr , nullptr );
4414
- }
4415
-
4416
- return false ;
4417
4336
}
4418
4337
4419
4338
QgsVectorDataProvider::Capabilities QgsSpatiaLiteProvider::capabilities () const
@@ -4762,7 +4681,9 @@ void QgsSpatiaLiteProvider::getViewSpatialIndexName()
4762
4681
quotedValue ( mGeometryColumn ) );
4763
4682
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
4764
4683
if ( ret != SQLITE_OK )
4765
- goto error;
4684
+ {
4685
+ handleError ( sql, errMsg );
4686
+ }
4766
4687
if ( rows < 1 )
4767
4688
;
4768
4689
else
@@ -4775,15 +4696,6 @@ void QgsSpatiaLiteProvider::getViewSpatialIndexName()
4775
4696
}
4776
4697
}
4777
4698
sqlite3_free_table ( results );
4778
- return ;
4779
-
4780
- error:
4781
- // unexpected error
4782
- if ( errMsg )
4783
- {
4784
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ), tr ( " SpatiaLite" ) );
4785
- sqlite3_free ( errMsg );
4786
- }
4787
4699
}
4788
4700
#endif
4789
4701
@@ -4825,7 +4737,10 @@ bool QgsSpatiaLiteProvider::getTableGeometryDetails()
4825
4737
4826
4738
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
4827
4739
if ( ret != SQLITE_OK )
4828
- goto error;
4740
+ {
4741
+ handleError ( sql, errMsg );
4742
+ return false ;
4743
+ }
4829
4744
if ( rows < 1 )
4830
4745
;
4831
4746
else
@@ -4892,18 +4807,12 @@ bool QgsSpatiaLiteProvider::getTableGeometryDetails()
4892
4807
sqlite3_free_table ( results );
4893
4808
4894
4809
if ( mGeomType == QgsWkbTypes::Unknown || mSrid < 0 )
4895
- goto error;
4896
-
4897
- return getSridDetails ();
4898
-
4899
- error:
4900
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ? errMsg : tr ( " unknown cause" ) ), tr ( " SpatiaLite" ) );
4901
- // unexpected error
4902
- if ( errMsg )
4903
4810
{
4904
- sqlite3_free ( errMsg );
4811
+ handleError ( sql, errMsg );
4812
+ return false ;
4905
4813
}
4906
- return false ;
4814
+
4815
+ return getSridDetails ();
4907
4816
}
4908
4817
4909
4818
bool QgsSpatiaLiteProvider::getViewGeometryDetails ()
@@ -4923,7 +4832,10 @@ bool QgsSpatiaLiteProvider::getViewGeometryDetails()
4923
4832
4924
4833
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
4925
4834
if ( ret != SQLITE_OK )
4926
- goto error;
4835
+ {
4836
+ handleError ( sql, errMsg );
4837
+ return false ;
4838
+ }
4927
4839
if ( rows < 1 )
4928
4840
;
4929
4841
else
@@ -4975,18 +4887,12 @@ bool QgsSpatiaLiteProvider::getViewGeometryDetails()
4975
4887
sqlite3_free_table ( results );
4976
4888
4977
4889
if ( mGeomType == QgsWkbTypes::Unknown || mSrid < 0 )
4978
- goto error;
4979
-
4980
- return getSridDetails ();
4981
-
4982
- error:
4983
- // unexpected error
4984
- if ( errMsg )
4985
4890
{
4986
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2 \n SQL: %1 " ). arg ( sql, errMsg ), tr ( " SpatiaLite " ) );
4987
- sqlite3_free ( errMsg ) ;
4891
+ handleError ( sql, errMsg );
4892
+ return false ;
4988
4893
}
4989
- return false ;
4894
+
4895
+ return getSridDetails ();
4990
4896
}
4991
4897
4992
4898
bool QgsSpatiaLiteProvider::getVShapeGeometryDetails ()
@@ -5004,7 +4910,10 @@ bool QgsSpatiaLiteProvider::getVShapeGeometryDetails()
5004
4910
5005
4911
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
5006
4912
if ( ret != SQLITE_OK )
5007
- goto error;
4913
+ {
4914
+ handleError ( sql, errMsg );
4915
+ return false ;
4916
+ }
5008
4917
if ( rows < 1 )
5009
4918
;
5010
4919
else
@@ -5045,18 +4954,12 @@ bool QgsSpatiaLiteProvider::getVShapeGeometryDetails()
5045
4954
sqlite3_free_table ( results );
5046
4955
5047
4956
if ( mGeomType == QgsWkbTypes::Unknown || mSrid < 0 )
5048
- goto error;
5049
-
5050
- return getSridDetails ();
5051
-
5052
- error:
5053
- // unexpected error
5054
- if ( errMsg )
5055
4957
{
5056
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2 \n SQL: %1 " ). arg ( sql, errMsg ), tr ( " SpatiaLite " ) );
5057
- sqlite3_free ( errMsg ) ;
4958
+ handleError ( sql, errMsg );
4959
+ return false ;
5058
4960
}
5059
- return false ;
4961
+
4962
+ return getSridDetails ();
5060
4963
}
5061
4964
5062
4965
bool QgsSpatiaLiteProvider::getQueryGeometryDetails ()
@@ -5087,7 +4990,11 @@ bool QgsSpatiaLiteProvider::getQueryGeometryDetails()
5087
4990
5088
4991
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
5089
4992
if ( ret != SQLITE_OK )
5090
- goto error;
4993
+ {
4994
+ handleError ( sql, errMsg );
4995
+ return false ;
4996
+ }
4997
+
5091
4998
if ( rows < 1 )
5092
4999
;
5093
5000
else
@@ -5120,7 +5027,11 @@ bool QgsSpatiaLiteProvider::getQueryGeometryDetails()
5120
5027
5121
5028
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
5122
5029
if ( ret != SQLITE_OK )
5123
- goto error;
5030
+ {
5031
+ handleError ( sql, errMsg );
5032
+ return false ;
5033
+ }
5034
+
5124
5035
if ( rows != 1 )
5125
5036
;
5126
5037
else
@@ -5161,18 +5072,12 @@ bool QgsSpatiaLiteProvider::getQueryGeometryDetails()
5161
5072
}
5162
5073
5163
5074
if ( mGeomType == QgsWkbTypes::Unknown || mSrid < 0 )
5164
- goto error;
5165
-
5166
- return getSridDetails ();
5167
-
5168
- error:
5169
- // unexpected error
5170
- if ( errMsg )
5171
5075
{
5172
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2 \n SQL: %1 " ). arg ( sql, errMsg ), tr ( " SpatiaLite " ) );
5173
- sqlite3_free ( errMsg ) ;
5076
+ handleError ( sql, errMsg );
5077
+ return false ;
5174
5078
}
5175
- return false ;
5079
+
5080
+ return getSridDetails ();
5176
5081
}
5177
5082
5178
5083
bool QgsSpatiaLiteProvider::getSridDetails ()
@@ -5188,7 +5093,10 @@ bool QgsSpatiaLiteProvider::getSridDetails()
5188
5093
5189
5094
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
5190
5095
if ( ret != SQLITE_OK )
5191
- goto error;
5096
+ {
5097
+ handleError ( sql, errMsg );
5098
+ return false ;
5099
+ }
5192
5100
if ( rows < 1 )
5193
5101
;
5194
5102
else
@@ -5202,15 +5110,6 @@ bool QgsSpatiaLiteProvider::getSridDetails()
5202
5110
sqlite3_free_table ( results );
5203
5111
5204
5112
return true ;
5205
-
5206
- error:
5207
- // unexpected error
5208
- if ( errMsg )
5209
- {
5210
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ), tr ( " SpatiaLite" ) );
5211
- sqlite3_free ( errMsg );
5212
- }
5213
- return false ;
5214
5113
}
5215
5114
5216
5115
#ifdef SPATIALITE_VERSION_GE_4_0_0
@@ -5256,7 +5155,10 @@ bool QgsSpatiaLiteProvider::getTableSummary()
5256
5155
5257
5156
ret = sqlite3_get_table ( mSqliteHandle , sql.toUtf8 ().constData (), &results, &rows, &columns, &errMsg );
5258
5157
if ( ret != SQLITE_OK )
5259
- goto error;
5158
+ {
5159
+ handleError ( sql, errMsg );
5160
+ return false ;
5161
+ }
5260
5162
if ( rows < 1 )
5261
5163
;
5262
5164
else
@@ -5283,15 +5185,6 @@ bool QgsSpatiaLiteProvider::getTableSummary()
5283
5185
}
5284
5186
sqlite3_free_table ( results );
5285
5187
return true ;
5286
-
5287
- error:
5288
- // unexpected error
5289
- if ( errMsg )
5290
- {
5291
- QgsMessageLog::logMessage ( tr ( " SQLite error: %2\n SQL: %1" ).arg ( sql, errMsg ), tr ( " SpatiaLite" ) );
5292
- sqlite3_free ( errMsg );
5293
- }
5294
- return false ;
5295
5188
}
5296
5189
5297
5190
QgsField QgsSpatiaLiteProvider::field ( int index ) const
0 commit comments