From 4ff7181e69ed18f0478d9447c4f9a512d0577b8e Mon Sep 17 00:00:00 2001 From: Michael Nygard Date: Fri, 18 May 2012 19:40:12 -0400 Subject: [PATCH] Fix null pointer exception when issuing a retraction with an empty collection of tuples. --- src/main/clojure/clojure/core/logic.clj | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/main/clojure/clojure/core/logic.clj b/src/main/clojure/clojure/core/logic.clj index 593be8f..23c07c3 100644 --- a/src/main/clojure/clojure/core/logic.clj +++ b/src/main/clojure/clojure/core/logic.clj @@ -1652,7 +1652,8 @@ "Retract a series of facts. Takes a vector of vectors where each vector represents a fact tuple, all with the same number of elements. It is not an error to retract a fact that isn't true." - ([rel [f :as tuples]] (retractions rel (count f) tuples)) + ([rel [f :as tuples]] + (when f (retractions rel (count f) tuples))) ([^Rel rel arity tuples] (let [rel-ns (:ns (meta rel)) rel-set (var-get (ns-resolve rel-ns (set-sym (.name rel) arity))) @@ -2086,4 +2087,4 @@ failure." [u v] `(fn [a#] - (!=-verify a# (unify a# ~u ~v)))) \ No newline at end of file + (!=-verify a# (unify a# ~u ~v)))) -- 1.7.9.4