From 83b463040fd8aa9f615923fcc94deee95e951c48 Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Fri, 2 Mar 2018 00:14:09 +0100 Subject: [PATCH] ENH: Add sanity check to InExpression (#1313) --- .../io/ebeaninternal/server/expression/InExpression.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/io/ebeaninternal/server/expression/InExpression.java b/src/main/java/io/ebeaninternal/server/expression/InExpression.java index 8c2d5f55d..c1101b9a2 100644 --- a/src/main/java/io/ebeaninternal/server/expression/InExpression.java +++ b/src/main/java/io/ebeaninternal/server/expression/InExpression.java @@ -40,6 +40,7 @@ class InExpression extends AbstractExpression { private List values() { List vals = new ArrayList<>(sourceValues.size()); for (Object sourceValue : sourceValues) { + assert sourceValue != null : "null is not allowed in in-queries"; NamedParamHelp.valueAdd(vals, sourceValue); } return vals; @@ -66,7 +67,11 @@ class InExpression extends AbstractExpression { @Override public void addBindValues(SpiExpressionRequest request) { - + for (Object value : bindValues) { + if (value == null) { + throw new NullPointerException("null values in 'in(...)' queries must be handled separately!"); + } + } ElPropertyValue prop = getElProp(request); if (prop != null && !prop.isAssocId()) { prop = null;