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 784350 - screensaver-proxy: Check gnome-session Inhibit call return value
screensaver-proxy: Check gnome-session Inhibit call return value
Status: RESOLVED OBSOLETE
Product: gnome-settings-daemon
Classification: Core
Component: general
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
Depends on:
Blocks:
 
 
Reported: 2017-06-29 15:34 UTC by 28872d13
Modified: 2019-03-20 11:45 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description 28872d13 2017-06-29 15:34:50 UTC
gsd-screensaver-proxy proxies inhibition to gnome-session. But if the Inhibit call to gnome-session fails, gsd-screensaver-proxy will not return anything and the dbus call will time out. Try for example with empty reason:

$ dbus-send --session --dest=org.freedesktop.ScreenSaver --print-reply /org/freedesktop/ScreenSaver org.freedesktop.ScreenSaver.Inhibit string:'test' string:''
Error org.freedesktop.DBus.Error.NoReply: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

Log says:

Jun 29 17:31:53 hiraizumi gnome-session[631]: gnome-session-binary[631]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jun 29 17:31:53 hiraizumi gnome-session-binary[631]: GLib-GObject-CRITICAL: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
Jun 29 17:31:53 hiraizumi gsd-screensaver[890]: g_variant_get_va: assertion 'value != NULL' failed
Jun 29 17:31:53 hiraizumi gsd-screensaver[890]: Type of return value is incorrect: expected '(u)', got '()''

gnome-session correctly gives error:

$ dbus-send --session --dest=org.gnome.SessionManager --print-reply /org/gnome/SessionManager org.gnome.SessionManager.Inhibit string:'test' uint32:0 string:'' uint32:4
Error org.gnome.SessionManager.GeneralError: Reason not specified
Comment 1 GNOME Infrastructure Team 2019-03-20 11:45:09 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gnome-settings-daemon/issues/344.