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 692793 - Debug window never sets Debug.Enabled back to FALSE
Debug window never sets Debug.Enabled back to FALSE
Status: RESOLVED FIXED
Product: empathy
Classification: Core
Component: General
3.6.x
Other Linux
: Normal normal
: ---
Assigned To: empathy-maint
empathy-maint
Depends on:
Blocks:
 
 
Reported: 2013-01-29 12:07 UTC by Will Thompson
Modified: 2014-02-05 12:54 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
debug-window: prevent proxy_invalidated_cb to be called after dispose (1010 bytes, patch)
2014-02-03 18:18 UTC, Guillaume Desmottes
committed Details | Review
debug-window: prevent using the store when disposing (1.29 KB, patch)
2014-02-03 18:18 UTC, Guillaume Desmottes
committed Details | Review
debug-window: fix proxy leak (853 bytes, patch)
2014-02-03 18:18 UTC, Guillaume Desmottes
committed Details | Review
debug-window: fix leak on all TpDebugClient (1.72 KB, patch)
2014-02-03 18:18 UTC, Guillaume Desmottes
committed Details | Review
debug-window: disable Debug on all proxies when exiting (1.82 KB, patch)
2014-02-03 18:18 UTC, Guillaume Desmottes
committed Details | Review

Description Will Thompson 2013-01-29 12:07:46 UTC
When you close the debug window, it should turn off emitting debug signals on all the CMs and clients. But it doesn't, since bug 592994 was fixed. http://git.gnome.org/browse/empathy/commit/?id=bb003c5d228051e1a55e401fc024ffd58eeeabb4 removes two calls to debug_window_set_enabled (..., FALSE);, leaving no such calls. This means that once you open the debug window, all your CMs, MC, and all your clients will continue spewing their debug output over D-Bus forever.

Not a huge problem but it does make using Bustle to spy on what's going on substantially more frustrating because it's absolutely chock-full of NewDebugMessage.
Comment 1 Guillaume Desmottes 2014-02-03 18:18:28 UTC
Created attachment 267982 [details] [review]
debug-window: prevent proxy_invalidated_cb to be called after dispose
Comment 2 Guillaume Desmottes 2014-02-03 18:18:32 UTC
Created attachment 267983 [details] [review]
debug-window: prevent using the store when disposing

Using g_signal_connect_object() isn't enought as it prevents from calling the
callback when the windows has been destroyed but not while disposing it.
Comment 3 Guillaume Desmottes 2014-02-03 18:18:36 UTC
Created attachment 267984 [details] [review]
debug-window: fix proxy leak

gtk_list_store_get() gives us a new ref.
Comment 4 Guillaume Desmottes 2014-02-03 18:18:39 UTC
Created attachment 267985 [details] [review]
debug-window: fix leak on all TpDebugClient

The store keeps its own ref and the client is reffed while the async call so
we can unref it right away.
Comment 5 Guillaume Desmottes 2014-02-03 18:18:43 UTC
Created attachment 267986 [details] [review]
debug-window: disable Debug on all proxies when exiting
Comment 6 Will Thompson 2014-02-04 20:50:46 UTC
Those all look good to me!
Comment 7 Will Thompson 2014-02-04 20:50:46 UTC
Those all look good to me!
Comment 8 Guillaume Desmottes 2014-02-05 12:54:25 UTC
Attachment 267982 [details] pushed as 853493d - debug-window: prevent proxy_invalidated_cb to be called after dispose
Attachment 267983 [details] pushed as 7c86586 - debug-window: prevent using the store when disposing
Attachment 267984 [details] pushed as d646a88 - debug-window: fix proxy leak
Attachment 267985 [details] pushed as e4d1698 - debug-window: fix leak on all TpDebugClient
Attachment 267986 [details] pushed as c4ebbe6 - debug-window: disable Debug on all proxies when exiting