2008-05-06 Mike Kestner <mkestner@novell.com>

* glib/Object.cs: revert the connection optimization from r102349.
	It breaks under the current CellRenderer implementation which probably
	can't be reworked compatibly to take advantage of this code.
	* glib/SignalClosure.cs: use IntPtr.ToInt64 instead of (long) since
	the cast apparently has issues on bleeding edge mono.

svn path=/trunk/gtk-sharp/; revision=102693
This commit is contained in:
Mike Kestner 2008-05-07 02:13:16 +00:00
parent acceaad509
commit 22add1100a
3 changed files with 9 additions and 13 deletions

View File

@ -1,3 +1,11 @@
2008-05-06 Mike Kestner <mkestner@novell.com>
* glib/Object.cs: revert the connection optimization from r102349.
It breaks under the current CellRenderer implementation which probably
can't be reworked compatibly to take advantage of this code.
* glib/SignalClosure.cs: use IntPtr.ToInt64 instead of (long) since
the cast apparently has issues on bleeding edge mono.
2008-05-06 Mike Kestner <mkestner@novell.com>
* gtk/Gtk.metadata: mark Rc.DefaultFiles accessors as null_term_array.

View File

@ -139,18 +139,6 @@ namespace GLib {
if (baseinfo == minfo)
continue;
bool ignore = false;
for (Type parent = t.BaseType; parent != baseinfo.DeclaringType; parent = parent.BaseType) {
MethodInfo pinfo = parent.GetMethod (minfo.Name, BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.DeclaredOnly);
if (pinfo != null) {
ignore = true;
break;
}
}
if (ignore)
continue;
foreach (object attr in baseinfo.GetCustomAttributes (typeof (DefaultSignalHandlerAttribute), false)) {
DefaultSignalHandlerAttribute sigattr = attr as DefaultSignalHandlerAttribute;
MethodInfo connector = sigattr.Type.GetMethod (sigattr.ConnectionMethod, BindingFlags.Static | BindingFlags.NonPublic);

View File

@ -135,7 +135,7 @@ namespace GLib {
SignalArgs args = Activator.CreateInstance (closure.args_type, new object [0]) as SignalArgs;
args.Args = new object [n_param_vals - 1];
for (int i = 1; i < n_param_vals; i++) {
IntPtr ptr = new IntPtr ((long)param_values + i * Marshal.SizeOf (typeof (Value)));
IntPtr ptr = new IntPtr (param_values.ToInt64 () + i * Marshal.SizeOf (typeof (Value)));
Value val = (Value) Marshal.PtrToStructure (ptr, typeof (Value));
args.Args [i - 1] = val.Val;
}