mono/gtk-sharp — pull request #39 by knocte (2012-05-06 23:31:02+00:00)
Title: glib-sharp: avoid issuing a CRITICAL from g_object lib

If a finalizer is called twice on a GObject, QueueUnref was being called twice, which added the object to PendingDestroys twice.
By making PendingDestroys a HashSet instead of a List, we avoid it having duplicated objects.

I observe this finalizer-called-twice behaviour happening with Mono 2.10.6 x86 on Linux.
This fixes BXC#4909.