summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJarek Kobus <jaroslaw.kobus@qt.io>2019-02-20 15:53:27 +0100
committerJarek Kobus <jaroslaw.kobus@qt.io>2019-03-01 10:12:20 +0000
commit64c35979aabad79e65de90233b43ace6724a10a9 (patch)
tree012e534490caf6588a7e1ee34dd1886b9fda9c1d
parent6b80ce68860f01a035e78391c81757dad4d612d8 (diff)
downloadqttools-64c35979aabad79e65de90233b43ace6724a10a9.tar.gz
Fix filtering in case when using empty option
It may happen that version or component value is empty for a specific documentation. Make this case work. Change-Id: I7133f1554d2fe72e3b9a4731e80245ceb051e596 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
-rw-r--r--src/assistant/help/qhelpcollectionhandler.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/assistant/help/qhelpcollectionhandler.cpp b/src/assistant/help/qhelpcollectionhandler.cpp
index 483ab968e..b7bec74ad 100644
--- a/src/assistant/help/qhelpcollectionhandler.cpp
+++ b/src/assistant/help/qhelpcollectionhandler.cpp
@@ -1041,7 +1041,8 @@ static QString prepareFilterQuery(const QString &filterName)
"Filter "
"WHERE ComponentMapping.NamespaceId = NamespaceTable.Id "
"AND ComponentTable.ComponentId = ComponentMapping.ComponentId "
- "AND ComponentTable.Name = ComponentFilter.ComponentName "
+ "AND ((ComponentTable.Name = ComponentFilter.ComponentName) "
+ "OR (ComponentTable.Name IS NULL AND ComponentFilter.ComponentName IS NULL)) "
"AND ComponentFilter.FilterId = Filter.FilterId "
"AND Filter.Name = ?))"
" AND "
@@ -1060,7 +1061,8 @@ static QString prepareFilterQuery(const QString &filterName)
"VersionTable, "
"Filter "
"WHERE VersionFilter.FilterId = Filter.FilterId "
- "AND VersionFilter.Version = VersionTable.Version "
+ "AND ((VersionFilter.Version = VersionTable.Version) "
+ "OR (VersionFilter.Version IS NULL AND VersionTable.Version IS NULL)) "
"AND VersionTable.NamespaceId = NamespaceTable.Id "
"AND Filter.Name = ?))"
")");