Skip to content

Commit 7e642df

Browse files
committedJan 19, 2016
Followup 8435fee, fix filtering of NULL values
1 parent d902c56 commit 7e642df

File tree

2 files changed

+4
-4
lines changed

2 files changed

+4
-4
lines changed
 

‎src/core/symbology-ng/qgscategorizedsymbolrendererv2.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -589,7 +589,7 @@ QString QgsCategorizedSymbolRendererV2::filter( const QgsFields& fields )
589589
}
590590
else if ( defaultActive )
591591
{
592-
return QString( "(\"%1\") NOT IN (%2)" ).arg( mAttrName, inactiveValues );
592+
return QString( "(\"%1\") NOT IN (%2) OR (\"%1\") IS NULL" ).arg( mAttrName, inactiveValues );
593593
}
594594
else
595595
{

‎tests/src/python/test_qgscategorizedsymbolrendererv2.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -62,11 +62,11 @@ def testFilter(self):
6262
self.assertEqual(renderer.filter(), '')
6363
# remove categories, leaving default
6464
assert renderer.updateCategoryRenderState(0, False)
65-
self.assertEqual(renderer.filter(), "(\"field\") NOT IN ('a')")
65+
self.assertEqual(renderer.filter(), "(\"field\") NOT IN ('a') OR (\"field\") IS NULL")
6666
assert renderer.updateCategoryRenderState(1, False)
67-
self.assertEqual(renderer.filter(), "(\"field\") NOT IN ('a','b')")
67+
self.assertEqual(renderer.filter(), "(\"field\") NOT IN ('a','b') OR (\"field\") IS NULL")
6868
assert renderer.updateCategoryRenderState(2, False)
69-
self.assertEqual(renderer.filter(), "(\"field\") NOT IN ('a','b','c')")
69+
self.assertEqual(renderer.filter(), "(\"field\") NOT IN ('a','b','c') OR (\"field\") IS NULL")
7070
# remove default category
7171
assert renderer.updateCategoryRenderState(3, False)
7272
self.assertEqual(renderer.filter(), "FALSE")

0 commit comments

Comments
 (0)
Please sign in to comment.