Skip to content

Commit

Permalink
Be permissive when parsing ranges from user input
Browse files Browse the repository at this point in the history
  • Loading branch information
elpaso committed Sep 1, 2018
1 parent bb01ef3 commit 7157076
Showing 1 changed file with 16 additions and 5 deletions.
21 changes: 16 additions & 5 deletions src/gui/symbology/qgsgraduatedsymbolrendererwidget.cpp
Expand Up @@ -1013,8 +1013,13 @@ void QgsGraduatedSymbolRendererWidget::changeRange( int rangeIdx )

if ( dialog.exec() == QDialog::Accepted )
{
double lowerValue = dialog.lowerValue().toDouble();
double upperValue = dialog.upperValue().toDouble();
bool ok = false;
double lowerValue = qgsPermissiveToDouble( dialog.lowerValue(), ok );
if ( ! ok )
lowerValue = 0.0;
double upperValue = qgsPermissiveToDouble( dialog.upperValue(), ok );
if ( ! ok )
upperValue = 0.0;
mRenderer->updateRangeUpperValue( rangeIdx, upperValue );
mRenderer->updateRangeLowerValue( rangeIdx, lowerValue );

Expand Down Expand Up @@ -1138,9 +1143,15 @@ QList<QgsSymbol *> QgsGraduatedSymbolRendererWidget::selectedSymbols()
{
continue;
}

double lowerBound = list.at( 0 ).toDouble();
double upperBound = list.at( 2 ).toDouble();
// Not strictly necessary because the range should have been sanitized already
// after user input, but being permissive never hurts
bool ok = false;
double lowerBound = qgsPermissiveToDouble( list.at( 0 ), ok );
if ( ! ok )
lowerBound = 0.0;
double upperBound = qgsPermissiveToDouble( list.at( 2 ), ok );
if ( ! ok )
upperBound = 0.0;
QgsSymbol *s = findSymbolForRange( lowerBound, upperBound, ranges );
if ( s )
{
Expand Down

0 comments on commit 7157076

Please sign in to comment.