From eec84f4b5d3382f87fbb9df72866b424b6486cab Mon Sep 17 00:00:00 2001 From: Mike Kestner Date: Thu, 3 Mar 2005 20:35:47 +0000 Subject: [PATCH] 2005-03-03 Mike Kestner * generator/ClassBase.cs : add null checking to CallByName. No sense manually adding this for the ones that need it. Better to have g_criticals then NullRefExceptions anyway. * generator/MethodBody.cs : simplify out handle generation. [A babystep toward #86620] svn path=/trunk/gtk-sharp/; revision=41408 --- ChangeLog | 8 ++++++++ generator/ClassBase.cs | 4 ++-- generator/MethodBody.cs | 2 +- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 0eda6a7d6..c84fc6d7e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2005-03-03 Mike Kestner + + * generator/ClassBase.cs : add null checking to CallByName. No sense + manually adding this for the ones that need it. Better to have g_criticals + then NullRefExceptions anyway. + * generator/MethodBody.cs : simplify out handle generation. + [A babystep toward #86620] + 2005-02-28 Dan Winship * gtk/Container.custom (ChildType): fix this to just call diff --git a/generator/ClassBase.cs b/generator/ClassBase.cs index 709cbc304..412bbce19 100644 --- a/generator/ClassBase.cs +++ b/generator/ClassBase.cs @@ -148,9 +148,9 @@ namespace GtkSharp.Generation { } } - public override string CallByName (string var_name) + public override string CallByName (string name) { - return var_name + ".Handle"; + return name + " == null ? IntPtr.Zero : " + name + ".Handle"; } public virtual string CallByName () diff --git a/generator/MethodBody.cs b/generator/MethodBody.cs index c6beae864..f7c9dbe5a 100644 --- a/generator/MethodBody.cs +++ b/generator/MethodBody.cs @@ -94,7 +94,7 @@ namespace GtkSharp.Generation { else if (igen is LPUGen || igen is LPGen) call_parm = p.Name + "_as_ptr"; else if (UsesHandle (igen)) { - call_parm = p.PassAs + " " + call_parm.Replace (".Handle", "_handle"); + call_parm = p.PassAs + " " + p.Name + "_handle"; } }