diff options
author | Rich Hickey <richhickey@gmail.com> | 2010-12-17 17:16:15 -0500 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2010-12-17 17:16:15 -0500 |
commit | 1109a8b49a2dfef6940b5d65f4ca651a61d7e36e (patch) | |
tree | a32ea159974a8d694904a8d4093db4fee03c08ed | |
parent | 2879523aaa72ca9cada4b54f4e4dabe6564de08a (diff) |
strip metadata from syms used in keywords, fixes #693
-rw-r--r-- | src/jvm/clojure/lang/Keyword.java | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/jvm/clojure/lang/Keyword.java b/src/jvm/clojure/lang/Keyword.java index 2017a959..4ed8bc1a 100644 --- a/src/jvm/clojure/lang/Keyword.java +++ b/src/jvm/clojure/lang/Keyword.java @@ -27,6 +27,8 @@ public final Symbol sym; final int hash; public static Keyword intern(Symbol sym){ + if(sym.meta() != null) + sym = (Symbol) sym.withMeta(null); Util.clearCache(rq, table); Keyword k = new Keyword(sym); SoftReference<Keyword> existingRef = table.putIfAbsent(sym, new SoftReference<Keyword>(k,rq)); |