Details
-
Type:
Defect
-
Status:
Closed
-
Priority:
Major
-
Resolution: Completed
-
Affects Version/s: None
-
Fix Version/s: Release 1.5
-
Component/s: None
-
Labels:None
-
Patch:Code and Test
-
Approval:Ok
Description
As explained in http://groups.google.com/group/clojure/browse_thread/thread/496ffc7fb9058699/6e9d8152b6fd6365?show_docid=6e9d8152b6fd6365, (.contains (transient #{}) :some-key) returns true instead of false. (contains? #{} :some-key) works properly, but the plain .contains method does not.
The issue is in TransientHashMap.doValAt(key, notFound), and the attached patch is a simple fix with test.
IIRC there are broader issues around lookup from transients. Should we look at this patch alone, or step back and review?