diff options
author | Rich Hickey <richhickey@gmail.com> | 2009-05-26 00:14:49 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2009-05-26 00:14:49 +0000 |
commit | d0fe0d1c544fb4d8d05ba3c7b6bf83fc2f4692a3 (patch) | |
tree | ba8db71d176ceb5b5b6b288ed9f8ece6a6ed376c /src | |
parent | 92ae58a35e3d2efbfc8f9cf4ba3767a32aaec29f (diff) |
avoid reflecting on nil instance method target
Diffstat (limited to 'src')
-rw-r--r-- | src/jvm/clojure/lang/Compiler.java | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java index ecdda8ab..cb14d96f 100644 --- a/src/jvm/clojure/lang/Compiler.java +++ b/src/jvm/clojure/lang/Compiler.java @@ -1137,10 +1137,8 @@ static class InstanceMethodExpr extends MethodExpr{ this.args = args; this.methodName = methodName; this.target = target; - if(target.hasJavaClass()) + if(target.hasJavaClass() && target.getJavaClass() != null) { - if(target.getJavaClass() == null) - throw new IllegalArgumentException("Attempt to call instance method '" + methodName + "' on nil"); List methods = Reflector.getMethods(target.getJavaClass(), args.count(), methodName, false); if(methods.isEmpty()) method = null; |