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 727823 - Threading fixes
Threading fixes
Status: RESOLVED FIXED
Product: gnome-software
Classification: Applications
Component: General
3.12.x
Other Linux
: Normal normal
: ---
Assigned To: GNOME Software maintainer(s)
GNOME Software maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2014-04-08 12:22 UTC by Kalev Lember
Modified: 2014-04-08 12:47 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GsApp: Notify property changes in an idle callback (3.49 KB, patch)
2014-04-08 12:22 UTC, Kalev Lember
committed Details | Review
plugin loader: Remove gs_app_set_state_in_idle (2.09 KB, patch)
2014-04-08 12:22 UTC, Kalev Lember
committed Details | Review
plugin loader: Improve thread safety (1.84 KB, patch)
2014-04-08 12:22 UTC, Kalev Lember
committed Details | Review

Description Kalev Lember 2014-04-08 12:22:04 UTC
Fixes to threading issues that can lead to crashes such as https://bugzilla.redhat.com/show_bug.cgi?id=1082833
Comment 1 Kalev Lember 2014-04-08 12:22:35 UTC
Created attachment 273793 [details] [review]
GsApp: Notify property changes in an idle callback

This makes sure the notify:: callbacks in the UI code get invoked in the
main thread. Without doing so, we can end up calling gtk+ functions from
the plugin thread in response to GsApp property changes.

https://bugzilla.redhat.com/show_bug.cgi?id=1082833
Comment 2 Kalev Lember 2014-04-08 12:22:39 UTC
Created attachment 273794 [details] [review]
plugin loader: Remove gs_app_set_state_in_idle

This is no longer needed now that GsApp marshalls all notify:: signals
to the main thread itself.
Comment 3 Kalev Lember 2014-04-08 12:22:42 UTC
Created attachment 273795 [details] [review]
plugin loader: Improve thread safety

Add missing locking to two places.
Comment 4 Kalev Lember 2014-04-08 12:47:42 UTC
Attachment 273793 [details] pushed as e14993e - GsApp: Notify property changes in an idle callback
Attachment 273794 [details] pushed as a4986d9 - plugin loader: Remove gs_app_set_state_in_idle
Attachment 273795 [details] pushed as a956793 - plugin loader: Improve thread safety