From a6544a1617bece69289b80b270061d84123f887a Mon Sep 17 00:00:00 2001 From: "Michael S. Klishin" Date: Mon, 4 Jun 2012 14:15:12 +0400 Subject: [PATCH] Make sure gridfs finders never go into infinite recursion Protocol matching is hash-based, so we cannot guarantee that DBObject implementation will always be picked before java.util.Map's. --- src/monger/gridfs.clj | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/monger/gridfs.clj b/src/monger/gridfs.clj index cc8384b..363a594 100644 --- a/src/monger/gridfs.clj +++ b/src/monger/gridfs.clj @@ -132,7 +132,8 @@ (find-one-as-map [^DBObject input] (converter (find-one input))) - java.util.Map + ;; using java.util.Map here results in (occasional) recursion + clojure.lang.IPersistentMap (find [^java.util.Map input] (find (to-db-object input))) (find-one [^java.util.Map input]