From: Mathieu Baudier Date: Sat, 2 Sep 2023 11:10:19 +0000 (+0200) Subject: Make basic search more robust X-Git-Tag: v2.3.16~12 X-Git-Url: http://git.argeo.org/?a=commitdiff_plain;h=940ce9759c33a2f409fb4491a05b0edb892584c7;p=gpl%2Fargeo-jcr.git Make basic search more robust --- 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; }