|
From: gnome-perl (bugzilla.gnome.o. <bug...@gn...> - 2011-10-20 05:29:13
|
https://bugzilla.gnome.org/show_bug.cgi?id=662265 gnome-perl | Glib | unspecified Summary: gperl_value_from_sv() doesn't understand G_TYPE_VALUE_ARRAY values Classification: Bindings Product: gnome-perl Version: unspecified OS/Version: All Status: UNCONFIRMED Severity: normal Priority: Normal Component: Glib AssignedTo: gtk...@li... ReportedBy: mic...@gm... QAContact: gtk...@li... GNOME version: --- Created an attachment (id=199499) --> (https://bugzilla.gnome.org/attachment.cgi?id=199499) GPerlBoxedWrapperClass for G_TYPE_VALUE_ARRAY I'm wrapping a GObject-based library with a couple of objects that have array properties (GParamSpecValueArray). When I try to set the property on construction, I get the following error: internal problem: GType GValueArray (2535808) has not been registered with GPerl This seems to be due to the fact that GValueArray is a boxed type, but it has not been registered with gperl_register_boxed, and there isn't any special code to handle ValueArray values in gperl_value_from_sv(). I needed a work around to get some minimal functionality for the library bindings, so I implemented the attached code, which I include in the library bindings module itself. This code probably isn't correct (I've only tested it for integers in the SV-to-GValue direction), and a proper fix should probably be to implement handling of value arrays at some point higher in the call stack (say when decoding the property GParamSpecs). -- Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug. |