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 724323 - GsdDeviceMapper: use an async constructor for GnomeRRScreen
GsdDeviceMapper: use an async constructor for GnomeRRScreen
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: general
unspecified
Other All
: Normal normal
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
Depends on:
Blocks:
 
 
Reported: 2014-02-13 22:24 UTC by Giovanni Campagna
Modified: 2014-03-05 21:05 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GsdDeviceMapper: use an async constructor for GnomeRRScreen (5.04 KB, patch)
2014-02-13 22:24 UTC, Giovanni Campagna
committed Details | Review

Description Giovanni Campagna 2014-02-13 22:24:36 UTC
GnomeRRScreen depends on mutter, so it cannot be created synchronously,
because doing so blocks gnome-settings-daemon from registering with
gnome-session, and thus blocks mutter/gnome-shell from being
spawned. Which triggers a timeout and fails.
Instead, do the init asynchronously. We lose the error reporting,
but in practice the call should never fail. Also, this creates
a small window of time in which GsdDeviceMapper sees no outputs,
but that's ok, because we recompute everything when the screen
is ready.
Comment 1 Giovanni Campagna 2014-02-13 22:24:38 UTC
Created attachment 269079 [details] [review]
GsdDeviceMapper: use an async constructor for GnomeRRScreen
Comment 2 Carlos Garnacho 2014-02-14 10:48:44 UTC
Review of attachment 269079 [details] [review]:

Thanks for the patch! Overall, it looks good, although I see several indenting issues in it... when those are fixed this is fine to push.

I agree this call should rarely fail, unless gnome-shell blocks/crashes in between (I have to admit I've seen that situation when doing gnome-settings-daemon -r, but never caught this on the jhbuild gnome-shell so I could get symbols), but this should never happen in the theory, so let's do this.
Comment 3 Giovanni Campagna 2014-03-05 21:05:28 UTC
Attachment 269079 [details] pushed as a73c590 - GsdDeviceMapper: use an async constructor for GnomeRRScreen