diff --git a/ChangeLog b/ChangeLog index 89925fb89..af21312d4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-06-02 Mike Kestner + + * gtk/Object.custom : only connect to Destroyed for managed subclasses + and let the wrappers get disposed by the GC. + 2005-06-01 Mike Kestner * glib/Value.cs : handle enum/flags types in Val. diff --git a/gtk/Object.custom b/gtk/Object.custom index b9743f50a..2a50fd505 100755 --- a/gtk/Object.custom +++ b/gtk/Object.custom @@ -45,6 +45,7 @@ if (obj == null) return; ManagedSubclasses.Remove (obj); + obj.Destroyed -= NativeDestroyHandler; obj.Dispose (); } @@ -61,11 +62,11 @@ { base.CreateNativeObject (names, vals); ManagedSubclasses [this] = this; + Destroyed += NativeDestroyHandler; } public override void Dispose () { - Destroyed -= NativeDestroyHandler; base.Dispose (); } @@ -80,7 +81,6 @@ g_object_ref (value); Sink (); - Destroyed += NativeDestroyHandler; } }