2005-02-03 Mike Kestner <mkestner@novell.com>

* generator/Signal.cs : virtual method enum retvals must be case to 
	Enum before casting to their ultimate type.  Also dispose retval 
	gvalues to avoid reference leaks.

svn path=/trunk/gtk-sharp/; revision=56529
This commit is contained in:
Mike Kestner 2006-02-03 15:55:22 +00:00
parent 6edc0b8b89
commit 11dade8683
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2005-02-03 Mike Kestner <mkestner@novell.com>
* generator/Signal.cs : virtual method enum retvals must be case to
Enum before casting to their ultimate type. Also dispose retval
gvalues to avoid reference leaks.
2005-01-31 Mike Kestner <mkestner@novell.com>
* gnome/About.custom : fix some nullterm issues in subclass

View File

@ -334,8 +334,12 @@ namespace GtkSharp.Generation {
sw.WriteLine (cleanup);
sw.WriteLine ("\t\t\tforeach (GLib.Value v in vals)");
sw.WriteLine ("\t\t\t\tv.Dispose ();");
if (!IsVoid)
sw.WriteLine ("\t\t\treturn (" + retval.CSType + ") ret;");
if (!IsVoid) {
IGeneratable igen = SymbolTable.Table [retval.CType];
sw.WriteLine ("\t\t\t" + retval.CSType + " result = (" + (igen is EnumGen ? retval.CSType + ") (Enum" : retval.CSType) + ") ret;");
sw.WriteLine ("\t\t\tret.Dispose ();");
sw.WriteLine ("\t\t\treturn result;");
}
sw.WriteLine ("\t\t}\n");
}