diff --git a/ChangeLog b/ChangeLog index 07cfdabe5..c2dd15fb3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-04-28 Mike Kestner + + * generator/Parameters.cs: ref parameter marshaling fix. + [Fixes #498472] Patch by Sebastian Dröge. + 2009-04-27 Christian Hoff * gtk/Widget.custom: Implement signal registration for the diff --git a/generator/Parameters.cs b/generator/Parameters.cs index 9b257a783..3ebafbad7 100644 --- a/generator/Parameters.cs +++ b/generator/Parameters.cs @@ -238,8 +238,11 @@ namespace GtkSharp.Generation { if (PassAs != "out") result += " = " + (gen as IManualMarshaler).AllocNative (CallName); return new string [] { result + ";" }; - } else if (PassAs == "out" && CSType != MarshalType) + } else if (PassAs == "out" && CSType != MarshalType) { return new string [] { gen.MarshalType + " native_" + CallName + ";" }; + } else if (PassAs == "ref" && CSType != MarshalType) { + return new string [] { gen.MarshalType + " native_" + CallName + " = (" + gen.MarshalType + ") " + CallName + ";" }; + } return new string [0]; }