glib: do not call undefined foreign type initializers, but issue a warning
authorDmitry Kalyanov <Kalyanov.Dmitry@gmail.com>
Thu, 30 Jul 2009 11:47:47 +0000 (15:47 +0400)
committerDmitry Kalyanov <Kalyanov.Dmitry@gmail.com>
Thu, 30 Jul 2009 11:53:13 +0000 (15:53 +0400)
glib/gobject.generating.lisp

index 06bf496..cac7f48 100644 (file)
 
 (defun type-initializer-call (type-initializer)
   (etypecase type-initializer
-    (string `(foreign-funcall ,type-initializer g-type))
+    (string `(if (foreign-symbol-pointer ,type-initializer)
+                 (foreign-funcall ,type-initializer g-type)
+                 (warn "Type initializer '~A' is not available" ,type-initializer)))
     (symbol `(funcall ',type-initializer))))
 
 (defun meta-property->slot (class-name property)