From: Dmitry Kalyanov Date: Tue, 21 Jul 2009 19:03:23 +0000 (+0400) Subject: Fixed setting and parsing GValues of GBoxed type GStrv X-Git-Url: http://repo.macrolet.net/gitweb/?a=commitdiff_plain;h=b3ed54c74815d976f989b00378f22768b4034324;p=cl-gtk2.git Fixed setting and parsing GValues of GBoxed type GStrv --- diff --git a/glib/gobject.foreign-gboxed.lisp b/glib/gobject.foreign-gboxed.lisp index a19ef24..58bc856 100644 --- a/glib/gobject.foreign-gboxed.lisp +++ b/glib/gobject.foreign-gboxed.lisp @@ -489,12 +489,13 @@ If it is a function designator then it specifies a function that accepts the new (t (parse-g-boxed (g-value-get-boxed gvalue) boxed-type)))))) (defmethod parse-g-value-for-type (gvalue-ptr (type-numeric (eql +g-type-boxed+))) - (if (g-type= (g-value-type gvalue-ptr) type-numeric) + (if (g-type= (g-value-type gvalue-ptr) (g-strv-get-type)) (convert-from-foreign (g-value-get-boxed gvalue-ptr) '(glib:gstrv :free-from-foreign nil)) (parse-g-value-boxed gvalue-ptr))) (defmethod set-gvalue-for-type (gvalue-ptr (type-numeric (eql +g-type-boxed+)) value) - (if (g-type= (g-value-type gvalue-ptr) type-numeric) + (format t "Converting ~A of GBoxed type ~A~%" value (g-type-string (g-value-type gvalue-ptr))) + (if (g-type= (g-value-type gvalue-ptr) (g-strv-get-type)) (g-value-set-boxed gvalue-ptr (convert-to-foreign value '(glib:gstrv :free-from-foreign nil))) (set-gvalue-boxed gvalue-ptr value)))