Skip to content

Commit cdca0dd

Browse files
authored
Merge pull request #5720 from elpaso/bugfix-17442-null-categories
[bugfix] Categorized style issue using numeric fields with NULL values
2 parents 8b15c73 + 29abd9d commit cdca0dd

File tree

1 file changed

+7
-13
lines changed

1 file changed

+7
-13
lines changed

src/gui/symbology/qgscategorizedsymbolrendererwidget.cpp

+7-13
Original file line numberDiff line numberDiff line change
@@ -604,28 +604,22 @@ static void _createCategories( QgsCategoryList &cats, QList<QVariant> &values, Q
604604

605605
int num = values.count();
606606

607-
bool hasNull = false;
608-
609607
for ( int i = 0; i < num; i++ )
610608
{
611609
QVariant value = values[i];
612-
if ( value.toString().isNull() )
610+
QgsSymbol *newSymbol = symbol->clone();
611+
if ( ! value.isNull() )
613612
{
614-
hasNull = true;
613+
cats.append( QgsRendererCategory( value, newSymbol, value.toString(), true ) );
615614
}
616-
QgsSymbol *newSymbol = symbol->clone();
617-
618-
cats.append( QgsRendererCategory( value, newSymbol, value.toString(), true ) );
619615
}
620616

621-
// add null (default) value if not exists
622-
if ( !hasNull )
623-
{
624-
QgsSymbol *newSymbol = symbol->clone();
625-
cats.append( QgsRendererCategory( QVariant( "" ), newSymbol, QString(), true ) );
626-
}
617+
// add null (default) value
618+
QgsSymbol *newSymbol = symbol->clone();
619+
cats.append( QgsRendererCategory( QVariant( "" ), newSymbol, QString(), true ) );
627620
}
628621

622+
629623
void QgsCategorizedSymbolRendererWidget::addCategories()
630624
{
631625
QString attrName = mExpressionWidget->currentField();

0 commit comments

Comments
 (0)