diff --git a/src/main/java/com/avaje/ebean/util/StringHelper.java b/src/main/java/com/avaje/ebean/util/StringHelper.java index a15db3629..59cd663ad 100644 --- a/src/main/java/com/avaje/ebean/util/StringHelper.java +++ b/src/main/java/com/avaje/ebean/util/StringHelper.java @@ -259,7 +259,7 @@ public class StringHelper { } } // we have finished parsing the string... - return; + } else { // get the delimited value... add it.. String value = str.substring(startPos, endPos); diff --git a/src/main/java/com/avaje/ebeaninternal/server/lib/util/StringHelper.java b/src/main/java/com/avaje/ebeaninternal/server/lib/util/StringHelper.java index f2cf0e0f6..019a8c8bc 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/lib/util/StringHelper.java +++ b/src/main/java/com/avaje/ebeaninternal/server/lib/util/StringHelper.java @@ -252,24 +252,20 @@ public class StringHelper { if (startPos <= str.length()) { String lastValue = str.substring(startPos, str.length()); // dp("lastValue="+lastValue); - if (!keepEmpties && lastValue.length() == 0) { - // dp("not keeping..."); - } else { - list.add(lastValue); - } - } + if (keepEmpties || lastValue.length() != 0) { + list.add(lastValue); + } + } // we have finished parsing the string... - return; + } else { // get the delimited value... add it.. String value = str.substring(startPos, endPos); // dp(startPos+","+endPos+" value="+value); - if (!keepEmpties && value.length() == 0) { - // dp("not keeping..."); - } else { - list.add(value); - } - // recursively search as we are not at the end yet... + if (keepEmpties || value.length() != 0) { + list.add(value); + } + // recursively search as we are not at the end yet... delimiter(str, delimiter, keepEmpties, endPos + 1, list); } } diff --git a/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java b/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java index c3ce4d9d6..e104773ac 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java +++ b/src/main/java/com/avaje/ebeaninternal/server/query/SqlTreeBuilder.java @@ -308,10 +308,7 @@ public class SqlTreeBuilder { IncludesDistiller extraJoinDistill = new IncludesDistiller(desc, selectIncludes, predicateIncludes); Collection extraJoins = extraJoinDistill.getExtraJoinRootNodes(); - if (extraJoins.isEmpty()) { - return; - - } else { + if (!extraJoins.isEmpty()) { // add extra joins required to support predicates // and/or order by clause for (SqlTreeNodeExtraJoin extraJoin: extraJoins) {