Skip to content

Commit 25652e4

Browse files
committed
More Coverity fixes
1 parent 5397d6b commit 25652e4

15 files changed

+40
-19
lines changed

src/app/qgisapp.cpp

+4-1
Original file line numberDiff line numberDiff line change
@@ -3007,7 +3007,10 @@ bool QgisApp::askUserForZipItemLayers( QString path )
30073007
{
30083008
QgsDataItem *item = zipItem->children()[i];
30093009
QgsLayerItem *layerItem = dynamic_cast<QgsLayerItem *>( item );
3010-
QgsDebugMsgLevel( QString( "item path=%1 provider=%2" ).arg( item->path() ).arg( layerItem->providerKey() ), 2 );
3010+
if ( layerItem )
3011+
{
3012+
QgsDebugMsgLevel( QString( "item path=%1 provider=%2" ).arg( item->path() ).arg( layerItem->providerKey() ), 2 );
3013+
}
30113014
if ( layerItem && layerItem->providerKey() == "gdal" )
30123015
{
30133016
layers << QString( "%1|%2|%3" ).arg( i ).arg( item->name() ).arg( "Raster" );

src/core/qgsexpression.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -777,7 +777,7 @@ static QVariant fcnRegexpSubstr( const QVariantList& values, const QgsFeature*,
777777
}
778778

779779
// extract substring
780-
re.indexIn( str );
780+
( void )re.indexIn( str );
781781
if ( re.captureCount() > 0 )
782782
{
783783
// return first capture

src/core/qgslogger.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,8 @@ void QgsLogger::logMessageToFile( QString theMessage )
146146

147147
//Maybe more efficient to keep the file open for the life of qgis...
148148
QFile file( sLogFile );
149-
file.open( QIODevice::Append );
149+
if ( !file.open( QIODevice::Append ) )
150+
return;
150151
file.write( theMessage.toLocal8Bit().constData() );
151152
file.write( "\n" );
152153
file.close();

src/core/qgsvectorlayer.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -3702,7 +3702,8 @@ QList<QgsAttributeEditorElement*> QgsAttributeEditorContainer::findElements( Qgs
37023702
if ( elem->type() == AeTypeContainer )
37033703
{
37043704
QgsAttributeEditorContainer* cont = dynamic_cast<QgsAttributeEditorContainer*>( elem );
3705-
results += cont->findElements( type );
3705+
if ( cont )
3706+
results += cont->findElements( type );
37063707
}
37073708
}
37083709

src/core/raster/qgsrasterblock.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ QgsRasterBlock::QgsRasterBlock( QGis::DataType theDataType, int theWidth, int th
5656
, mNoDataBitmapWidth( 0 )
5757
, mNoDataBitmapSize( 0 )
5858
{
59-
reset( mDataType, mWidth, mHeight );
59+
( void )reset( mDataType, mWidth, mHeight );
6060
}
6161

6262
QgsRasterBlock::QgsRasterBlock( QGis::DataType theDataType, int theWidth, int theHeight, double theNoDataValue )
@@ -73,7 +73,7 @@ QgsRasterBlock::QgsRasterBlock( QGis::DataType theDataType, int theWidth, int th
7373
, mNoDataBitmapWidth( 0 )
7474
, mNoDataBitmapSize( 0 )
7575
{
76-
reset( mDataType, mWidth, mHeight, mNoDataValue );
76+
( void )reset( mDataType, mWidth, mHeight, mNoDataValue );
7777
}
7878

7979
QgsRasterBlock::~QgsRasterBlock()

src/core/symbology-ng/qgsrulebasedrendererv2.cpp

+3
Original file line numberDiff line numberDiff line change
@@ -1092,6 +1092,9 @@ QgsRuleBasedRendererV2* QgsRuleBasedRendererV2::convertFromRenderer( const QgsFe
10921092
if ( renderer->type() == "categorizedSymbol" )
10931093
{
10941094
const QgsCategorizedSymbolRendererV2* categorizedRenderer = dynamic_cast<const QgsCategorizedSymbolRendererV2*>( renderer );
1095+
if ( !categorizedRenderer )
1096+
return 0;
1097+
10951098
QgsRuleBasedRendererV2::Rule* rootrule = new QgsRuleBasedRendererV2::Rule( NULL );
10961099

10971100
QString expression;

src/plugins/evis/databaseconnection/evisdatabaseconnection.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -169,8 +169,8 @@ QSqlQuery* eVisDatabaseConnection::query( QString sqlStatement )
169169
//set forward only is required for OBDC on linux
170170
mQuery = QSqlQuery( mDatabase );
171171
mQuery.setForwardOnly( true );
172-
mQuery.exec( sqlStatement );
173-
if ( mQuery.isActive() )
172+
bool execOk = mQuery.exec( sqlStatement );
173+
if ( execOk && mQuery.isActive() )
174174
{
175175
return &mQuery;
176176
}

src/plugins/georeferencer/qgsgeoreftransform.cpp

+2-1
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,8 @@ bool QgsGeorefTransform::getLinearOriginScale( QgsPoint &origin, double &scaleX,
294294
{
295295
return false;
296296
}
297-
return dynamic_cast<QgsLinearGeorefTransform *>( mGeorefTransformImplementation )->getOriginScale( origin, scaleX, scaleY );
297+
QgsLinearGeorefTransform* transform = dynamic_cast<QgsLinearGeorefTransform *>( mGeorefTransformImplementation );
298+
return transform && transform->getOriginScale( origin, scaleX, scaleY );
298299
}
299300

300301
bool QgsGeorefTransform::getOriginScaleRotation( QgsPoint &origin, double &scaleX, double &scaleY, double& rotation ) const

src/providers/mssql/qgsmssqldataitems.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ QVector<QgsDataItem*> QgsMssqlConnectionItem::createChildren()
136136
// issue the sql query
137137
QSqlQuery q = QSqlQuery( db );
138138
q.setForwardOnly( true );
139-
q.exec( query );
139+
( void )q.exec( query );
140140

141141
if ( q.isActive() )
142142
{

src/providers/mssql/qgsmssqlprovider.cpp

+14-5
Original file line numberDiff line numberDiff line change
@@ -920,7 +920,16 @@ bool QgsMssqlProvider::addFeatures( QgsFeatureList & flist )
920920
}
921921
}
922922

923-
query.next();
923+
if ( !query.next() )
924+
{
925+
QString msg = query.lastError().text();
926+
QgsDebugMsg( msg );
927+
if ( !mSkipFailures )
928+
{
929+
pushError( msg );
930+
return false;
931+
}
932+
}
924933
it->setFeatureId( query.value( 0 ).toLongLong() );
925934
}
926935

@@ -1315,17 +1324,17 @@ QgsCoordinateReferenceSystem QgsMssqlProvider::crs()
13151324
// try to load crs
13161325
QSqlQuery query = QSqlQuery( mDatabase );
13171326
query.setForwardOnly( true );
1318-
query.exec( QString( "select srtext from spatial_ref_sys where srid = %1" ).arg( QString::number( mSRId ) ) );
1319-
if ( query.isActive() )
1327+
bool execOk = query.exec( QString( "select srtext from spatial_ref_sys where srid = %1" ).arg( QString::number( mSRId ) ) );
1328+
if ( execOk && query.isActive() )
13201329
{
13211330
if ( query.next() && mCrs.createFromWkt( query.value( 0 ).toString() ) )
13221331
return mCrs;
13231332

13241333
query.finish();
13251334
}
13261335
query.clear();
1327-
query.exec( QString( "select well_known_text from sys.spatial_reference_systems where spatial_reference_id = %1" ).arg( QString::number( mSRId ) ) );
1328-
if ( query.isActive() && query.next() && mCrs.createFromWkt( query.value( 0 ).toString() ) )
1336+
execOk = query.exec( QString( "select well_known_text from sys.spatial_reference_systems where spatial_reference_id = %1" ).arg( QString::number( mSRId ) ) );
1337+
if ( execOk && query.isActive() && query.next() && mCrs.createFromWkt( query.value( 0 ).toString() ) )
13291338
return mCrs;
13301339
}
13311340
return mCrs;

src/providers/mssql/qgsmssqlsourceselect.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -541,7 +541,7 @@ void QgsMssqlSourceSelect::on_btnConnect_clicked()
541541
// issue the sql query
542542
QSqlQuery q = QSqlQuery( db );
543543
q.setForwardOnly( true );
544-
q.exec( query );
544+
( void )q.exec( query );
545545

546546
if ( q.isActive() )
547547
{

tests/bench/qgsbench.cpp

+3-1
Original file line numberDiff line numberDiff line change
@@ -339,7 +339,9 @@ QString QgsBench::serialize( QMap<QString, QVariant> theMap, int level )
339339
void QgsBench::saveLog( const QString & fileName )
340340
{
341341
QFile file( fileName );
342-
file.open( QIODevice::WriteOnly | QIODevice::Text );
342+
if ( !file.open( QIODevice::WriteOnly | QIODevice::Text ) )
343+
return;
344+
343345
QTextStream out( &file );
344346
out << serialize( mLogMap ).toAscii().constData() << "\n";
345347
file.close();

tests/qt_modeltest/modeltest.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ void ModelTest::nonDestructiveBasicTest()
132132
fetchingMore = false;
133133
Qt::ItemFlags flags = model->flags( QModelIndex() );
134134
Q_ASSERT( flags == Qt::ItemIsDropEnabled || flags == 0 );
135-
model->hasChildren( QModelIndex() );
135+
( void )model->hasChildren( QModelIndex() );
136136
model->hasIndex( 0, 0 );
137137
model->headerData( 0, Qt::Horizontal );
138138
model->index( 0, 0 );

tests/src/core/testqgsmaplayerstylemanager.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ void TestQgsMapLayerStyleManager::testReadWrite()
114114
sm0.addStyleFromLayer( "blue" );
115115
sm0.setCurrentStyle( "blue" );
116116
QgsSingleSymbolRendererV2* r1 = dynamic_cast<QgsSingleSymbolRendererV2*>( mVL->rendererV2() );
117+
QVERIFY( r1 );
117118
r1->symbol()->setColor( Qt::blue );
118119

119120
// read and write

tests/src/providers/testqgswcspublicservers.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,7 @@ void TestQgsWcsPublicServers::test()
546546
myVersionLogFile.close();
547547
}
548548
QFile myServerLogFile( myServerLogPath );
549-
myServerLogFile.open( QIODevice::WriteOnly | QIODevice::Text );
549+
Q_ASSERT( myServerLogFile.open( QIODevice::WriteOnly | QIODevice::Text ) );
550550
QTextStream myServerStream( &myServerLogFile );
551551
myServerStream << myServerLog.join( "\n" );
552552
myServerLogFile.close();

0 commit comments

Comments
 (0)