made odbc read (from c) decimals and numerics as doubles instead of
[clsql.git] / sql / metaclasses.lisp
index d942c6ddc9a0e10d51ee3c4f0391459bd5188de4..81a430c59f1c584a231e2d27fef94c87c081958f 100644 (file)
@@ -538,7 +538,7 @@ implementations."
          ;; but it's better than nothing -wcp10/4/10.
          #+(and sbcl #.(cl:if (cl:and (cl:find-package :sb-pcl)
                                       (cl:find-symbol "%TYPE-CHECK-FUNCTION" :sb-pcl))
-                              '(list 'cl:and) '(list 'cl:or)))
+                              '(cl:and) '(cl:or)))
          (setf (slot-value esd 'sb-pcl::%type-check-function) nil)
 
          )
@@ -573,8 +573,11 @@ implementations."
     result))
 
 (defun slotdef-for-slot-with-class (slot class)
-  (find-if #'(lambda (d) (eql slot (slot-definition-name d)))
-           (class-slots class)))
+  (typecase slot
+    (standard-slot-definition slot)
+    (symbol
+     (find-if #'(lambda (d) (eql slot (slot-definition-name d)))
+              (class-slots class)))))
 
 #+ignore
 (eval-when (:compile-toplevel :load-toplevel :execute)