Generation: try to call the (probable) type initializer before trying to generate...
authorDmitry Kalyanov <Kalyanov.Dmitry@gmail.com>
Tue, 1 Sep 2009 21:04:16 +0000 (01:04 +0400)
committerDmitry Kalyanov <Kalyanov.Dmitry@gmail.com>
Tue, 1 Sep 2009 21:04:16 +0000 (01:04 +0400)
glib/gobject.generating.lisp

index cac7f48..5ac99de 100644 (file)
     (write-string "_get_type" stream)))
 
 (defun get-g-class-definition (type &optional lisp-name-package)
+  (when (and (stringp type) (zerop (g-type-numeric type)))
+    (let ((type-init-name (probable-type-init-name type)))
+      (when (foreign-symbol-pointer type-init-name)
+        (foreign-funcall-pointer (foreign-symbol-pointer type-init-name) () :int))))
   (let* ((*lisp-name-package* (or lisp-name-package *lisp-name-package* *package*))
          (g-type (ensure-g-type type))
          (g-name (g-type-name g-type))