GDA is a multi-threading application, so g_object_weak_* is unsafe in this environment. Use GWeakRef instead.