Re: [gnome-db] Re: Gda# Tests



On Tue, 2005-10-11 at 13:57 -0400, Dan Winship wrote:
> Daniel Espinosa wrote:
> > And the code generated by api2-codegen use:
> > 
> >                 [DllImport("gda-3")]
> > 		static extern GLib.Value gda_value_new_string(IntPtr val);
> > 
> > 		public static GLib.Value NewString(string val) {
> > 			IntPtr val_as_native = GLib.Marshaller.StringToPtrGStrdup (val);
> > 			GLib.Value raw_ret = gda_value_new_string(val_as_native);
> > 			GLib.Value ret = raw_ret;
> > 			GLib.Marshaller.Free (val_as_native);
> > 			return ret;
> > 		}
> 
> This is broken. The problem is that gtk# considers GLib.Value to be a 
> value type (meaning it's always allocated on the stack), but gda is 
> using GValue as a reference type (allocated on the heap and explicitly 
> allocated/freed). You're probably going to have to wrap Gda.Value by 
> hand, obscuring the fact that it's really a GLib.Value underneath.
> 
> Meanwhile, the attached patches should probably be committed to get the 
> rest of the gda# bindings up-to-date with respect to libgda.
> 
please commit them.
-- 
Rodrigo Moya <rodrigo gnome-db org>




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]