After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 383868 - WidgetFactory in SettingChooser never being released
WidgetFactory in SettingChooser never being released
Status: RESOLVED FIXED
Product: lsr
Classification: Deprecated
Component: extensions
0.3.x
Other Linux
: Normal normal
: 0.4.0
Assigned To: Eitan Isaacson
LSR maintainers
Depends on:
Blocks:
 
 
Reported: 2006-12-08 21:53 UTC by Peter Parente
Modified: 2006-12-19 20:03 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed patch (943 bytes, patch)
2006-12-19 19:46 UTC, Eitan Isaacson
none Details | Review
Proposed patch (3.91 KB, patch)
2006-12-19 19:55 UTC, Eitan Isaacson
none Details | Review

Description Peter Parente 2006-12-08 21:53:26 UTC
Something is holding a reference to the widget factory in the SettingChooser module indefinitely because its __del__ method is never getting calling. It could be that pygtk never completely releases its widget signal handler references when the dialog is destroyed. To fix, we would have to provide weak references to methods on WidgetFactor to all pygtk connect calls. We can do this by re-using the Proxy class in AEState.Setting. Really, it's pygtk's fault if this is the case and we should file a bug.

Alternatively, if it's not pygtk, then our Proxy class might be behaving badly. It should only be keeping weak references to the WidgetFactory around when we register for setting value change notifications. But maybe it's broken in some way. I've tested it outside LSR and it has worked properly, so I'm doubtful that this is the problem.
Comment 1 Eitan Isaacson 2006-12-19 19:46:15 UTC
Created attachment 78647 [details] [review]
Proposed patch

Yup,
Weak references to the callbacks seems to allow the WidgetFactory to be released.
Comment 2 Eitan Isaacson 2006-12-19 19:55:38 UTC
Created attachment 78648 [details] [review]
Proposed patch

Oops, wrong patch
Comment 3 Peter Parente 2006-12-19 20:03:57 UTC
Fixed in the development version. The fix will be available in the next major release. Thank you for your bug report.