Attached are two simple patches:
This patch lets the signal code use the proper GValueArray api
using it as a glorified array.
Which has the important side-effect that on g_value_array_free does
actually g_value_unset all items in the array. Which is important
that have _free function which is called on _unset, like all Ruby
types have. Currently every time a signal is emitted containing a
value in it’s arguments a reference to that value is leaked…
It does cause some extra work to be done as now internally
called for each param. But this overhead should be negligible as
usually don’t have a lot of params and the value copy functions
do a tiny amount of work.
Simple typo, using RVAL2GENUM where GENUM2RVAL should be used.
Ok to commit these ?