[ https://issues.apache.org/jira/browse/GROOVY-7771?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15171142#comment-15171142 ]
Benjamin Graf commented on GROOVY-7771: --------------------------------------- Patch suggestion: {code:java} public Object getProperty(String property) { if (binding.hasVariable(property)) { return binding.getVariable(property); } return super.getProperty(property); } {code} > Exception driven control flow in groovy.lang.Script.getProperty() > ----------------------------------------------------------------- > > Key: GROOVY-7771 > URL: https://issues.apache.org/jira/browse/GROOVY-7771 > Project: Groovy > Issue Type: Bug > Affects Versions: 2.4.6 > Reporter: Benjamin Graf > > groovy.lang.Script.getProperty() calls Binding.getProperty() and does > therfore react on MissingPropertyException. This control flow is an > antipattern causing unnecessary Throwable.fillInStackTrace() calls which cost > cpu time. It might be better to check with Binding.hasProperty() first to > avoid Exception flow. -- This message was sent by Atlassian JIRA (v6.3.4#6332)