From 64b9a36fde793a0d99c3a9d9c15d73c6877d58ad Mon Sep 17 00:00:00 2001 From: Aaron Bedra Date: Fri, 7 Jan 2011 15:09:01 -0500 Subject: [PATCH] use clojure.lang.Util.classOf() instead of getClass() to avoid NPE in (case nil ... ) inside of constantType. Don't do the work and just return java.lang.Object if class is NULL. --- src/jvm/clojure/lang/Compiler.java | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/jvm/clojure/lang/Compiler.java b/src/jvm/clojure/lang/Compiler.java index fd658d8..6e7c857 100644 --- a/src/jvm/clojure/lang/Compiler.java +++ b/src/jvm/clojure/lang/Compiler.java @@ -4571,8 +4571,8 @@ static public class ObjExpr implements Expr{ Type constantType(int id){ Object o = constants.nth(id); - Class c = o.getClass(); - if(Modifier.isPublic(c.getModifiers())) + Class c = clojure.lang.Util.classOf(o); + if(c!= null && Modifier.isPublic(c.getModifiers())) { //can't emit derived fn types due to visibility if(LazySeq.class.isAssignableFrom(c)) -- 1.7.3.4