This is an automated email from the ASF dual-hosted git repository. borinquenkid pushed a commit to branch merge-hibernate6 in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 9668f7f034fa6a054383b480aa8ea65a22ce4bea Author: Walter Duque de Estrada <[email protected]> AuthorDate: Mon Jun 9 22:14:28 2025 -0500 Handling list method in DetachedCriteria --- .../src/main/groovy/grails/gorm/DetachedCriteria.groovy | 5 ++--- .../src/main/groovy/grails/gorm/PagedResultList.java | 1 + 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/grails-datamapping-core/src/main/groovy/grails/gorm/DetachedCriteria.groovy b/grails-datamapping-core/src/main/groovy/grails/gorm/DetachedCriteria.groovy index 9c2a621b21..3b5688b461 100644 --- a/grails-datamapping-core/src/main/groovy/grails/gorm/DetachedCriteria.groovy +++ b/grails-datamapping-core/src/main/groovy/grails/gorm/DetachedCriteria.groovy @@ -20,7 +20,6 @@ package grails.gorm import groovy.transform.CompileStatic -import groovy.transform.TypeCheckingMode import org.grails.datastore.gorm.GormEnhancer import org.grails.datastore.gorm.GormStaticApi import org.grails.datastore.gorm.finders.DynamicFinder @@ -28,7 +27,6 @@ import org.grails.datastore.gorm.query.GormOperations import org.grails.datastore.gorm.query.criteria.AbstractDetachedCriteria import org.grails.datastore.mapping.core.Session import org.grails.datastore.mapping.query.Query -import org.grails.datastore.mapping.query.api.Criteria import org.grails.datastore.mapping.query.api.ProjectionList import org.grails.datastore.mapping.query.api.QueryAliasAwareSession import org.grails.datastore.mapping.query.api.QueryArgumentsAware @@ -137,7 +135,8 @@ class DetachedCriteria<T> extends AbstractDetachedCriteria<T> implements GormOpe */ List<T> list(Map args = Collections.emptyMap(), @DelegatesTo(DetachedCriteria) Closure additionalCriteria = null) { (List)withPopulatedQuery(args, additionalCriteria) { Query query -> - if (args?.max) { + if (args != null && !args.isEmpty()) { + DynamicFinder.populateArgumentsForCriteria(targetClass, query, args) return new PagedResultList(query) } return query.list() diff --git a/grails-datamapping-core/src/main/groovy/grails/gorm/PagedResultList.java b/grails-datamapping-core/src/main/groovy/grails/gorm/PagedResultList.java index f6767b9d15..9443ab5623 100644 --- a/grails-datamapping-core/src/main/groovy/grails/gorm/PagedResultList.java +++ b/grails-datamapping-core/src/main/groovy/grails/gorm/PagedResultList.java @@ -106,6 +106,7 @@ public class PagedResultList<E> implements Serializable, List<E> { totalCount = 0; } else { Query newQuery = (Query)query.clone(); + newQuery.offset(0); newQuery.projections().count(); Number result = (Number) newQuery.singleResult(); totalCount = result == null ? 0 : result.intValue();
