* Version 4.0.3
[clsql.git] / sql / metaclasses.lisp
index bed60eeea4825fca492dbd2ebc62cf0943dc07a3..2a0b4b9b2c835c30f194c46674b4c2fe795e65b0 100644 (file)
       (pop-arg mylist))
     newlist))
 
+(defun set-view-table-slot (class base-table)
+  (setf (view-table class)
+        (table-name-from-arg (or (and base-table
+                                      (if (listp base-table)
+                                          (car base-table)
+                                          base-table))
+                                 (class-name class)))))
+
 (defmethod initialize-instance :around ((class standard-db-class)
                                         &rest all-keys
                                         &key direct-superclasses base-table
                                                 direct-superclasses)
                    (remove-keyword-arg all-keys :direct-superclasses)))
         (call-next-method))
-    (setf (view-table class)
-          (table-name-from-arg (or (and base-table
-                                        (if (listp base-table)
-                                            (car base-table)
-                                            base-table))
-                                   (class-name class))))
+    (set-view-table-slot class base-table)
     (register-metaclass class (nth (1+ (position :direct-slots all-keys))
                                    all-keys))))
 
                                           &allow-other-keys)
   (let ((root-class (find-class 'standard-db-object nil))
         (vmc 'standard-db-class))
-    (setf (view-table class)
-          (table-name-from-arg (sql-escape (or (and base-table
-                                                    (if (listp base-table)
-                                                        (car base-table)
-                                                        base-table))
-                                               (class-name class)))))
+    (set-view-table-slot class base-table)
     (setf (view-class-qualifier class)
           (car qualifier))
     (if (and root-class (not (equal class root-class)))