From 940ce9759c33a2f409fb4491a05b0edb892584c7 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Sat, 2 Sep 2023 13:10:19 +0200 Subject: [PATCH] Make basic search more robust --- .../src/org/argeo/cms/jcr/acr/BasicSearchToQom.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/BasicSearchToQom.java b/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/BasicSearchToQom.java index 99b8392..e1cf8ba 100644 --- a/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/BasicSearchToQom.java +++ b/org.argeo.cms.jcr/src/org/argeo/cms/jcr/acr/BasicSearchToQom.java @@ -85,11 +85,13 @@ class BasicSearchToQom { javax.jcr.query.qom.Constraint currQomConstraint = toQomConstraint(constraints.get(0)); for (int i = 1; i < constraints.size(); i++) { Constraint c = constraints.get(i); - if (where.isUnion()) { - currQomConstraint = factory.or(currQomConstraint, toQomConstraint(c)); - } else { - currQomConstraint = factory.and(currQomConstraint, toQomConstraint(c)); - } + javax.jcr.query.qom.Constraint subQomConstraint = toQomConstraint(c); + if (subQomConstraint != null) // isContentClass leads to null QOM constraint + if (where.isUnion()) { + currQomConstraint = factory.or(currQomConstraint, subQomConstraint); + } else { + currQomConstraint = factory.and(currQomConstraint, subQomConstraint); + } } qomConstraint = currQomConstraint; } -- 2.30.2