Skip to content

overrides: fix callback setter overrides (bis)

The previous commit broke those by trying to pass weak refs through pygobject, but we should probably have tested the elements beyond instantiation: weakref.WeakMethod returns a callable, but that callable when called only returns the ephemeral bound method, which is the object we want to call, but pygobject has no support for that.

Instead, fix the memory leaks we were going after by decoupling the lifecycle of the callback and that of the pad, by passing functors to pygobject.

Merge request reports