This is an automated email from the ASF dual-hosted git repository. ntimofeev pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/cayenne.git
The following commit(s) were added to refs/heads/master by this push: new d02b0a4 minor code cleanup d02b0a4 is described below commit d02b0a43938b314b608565450cddb9b66e595e28 Author: Nikita Timofeev <stari...@gmail.com> AuthorDate: Thu May 14 18:44:26 2020 +0300 minor code cleanup --- .../org/apache/cayenne/exp/parser/ASTEqual.java | 27 +++++++++++----------- 1 file changed, 13 insertions(+), 14 deletions(-) diff --git a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ASTEqual.java b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ASTEqual.java index 8fdfe06..2e4bc65 100644 --- a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ASTEqual.java +++ b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ASTEqual.java @@ -124,23 +124,22 @@ public class ASTEqual extends ConditionNode implements ValueInjector { } public void injectValue(Object o) { - // try to inject value, if one of the operands is scalar, and other is a - // path - - Node[] args = new Node[] { jjtGetChild(0), jjtGetChild(1) }; - - int scalarIndex = -1; - if (args[0] instanceof ASTScalar) { - scalarIndex = 0; - } else if (args[1] instanceof ASTScalar) { - scalarIndex = 1; + // try to inject value, if one of the operands is scalar, and other is a path + ASTScalar scalar = null; + ASTObjPath path = null; + + for(int i=0; i<=1; i++) { + Node node = jjtGetChild(i); + if(node instanceof ASTScalar) { + scalar = (ASTScalar)node; + } else if(node instanceof ASTObjPath) { + path = (ASTObjPath) node; + } } - if (scalarIndex != -1 && args[1 - scalarIndex] instanceof ASTObjPath) { - // inject - ASTObjPath path = (ASTObjPath) args[1 - scalarIndex]; + if (scalar != null && path != null) { try { - path.injectValue(o, evaluateChild(scalarIndex, o)); + path.injectValue(o, scalar.getValue()); } catch (Exception ex) { LOGGER.warn("Failed to inject value " + " on path " + path.getPath() + " to " + o, ex); }