Ticket #993: l0-hash.lisp.2.diff

File l0-hash.lisp.2.diff, 956 bytes (added by uchida, 18 months ago)
  • ccl/level-0/l0-hash.lisp

    old new  
    870870                 ;; that risks grow-threshold ending up too big (e.g. if somebody rehashes 
    871871                 ;; before the incf), which _could_ be harmful. 
    872872                 (atomic-decf (nhash.grow-threshold hash)) 
    873                  (if (set-hash-key-conditional vector-index vector free-hash-marker key) 
    874                    (when (set-hash-value-conditional vector-index vector free-hash-marker value) 
     873                 (if (set-hash-value-conditional vector-index vector free-hash-marker value) 
     874                   (when (set-hash-key-conditional vector-index vector free-hash-marker key) 
    875875                     (return-from lock-free-puthash value))))) 
    876876              (t (let ((old-value (%svref vector (%i+ vector-index 1)))) 
    877877                   (unless (eq old-value rehashing-value-marker)