From be78f0f36a17a45f44b7c6723138d3e02944ee8d Mon Sep 17 00:00:00 2001 From: Mario Sanchez Prada Date: Wed, 22 Apr 2015 23:00:16 +0100 Subject: [PATCH] misc: Add missing check on reply from systemd's CanSuspend D-Bus method According to systemd logind's documentation, the CanSuspend() method "returns 'na' in case "the operation is not available because hardware, kernel or drivers do not support it", while "'no' is returned if the operation is available but the user is not allowed to execute it". See http://www.freedesktop.org/wiki/Software/systemd/logind Thus, we need to return true here when the reply for the CanSuspend method is neither 'no' nor 'na', or we would providing false positives in cases where suspension is simply unsupported. https://bugzilla.gnome.org/show_bug.cgi?id=748338 --- js/misc/loginManager.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/misc/loginManager.js b/js/misc/loginManager.js index b4ed4a6a3..6ed826226 100644 --- a/js/misc/loginManager.js +++ b/js/misc/loginManager.js @@ -134,7 +134,7 @@ const LoginManagerSystemd = new Lang.Class({ if (error) asyncCallback(false); else - asyncCallback(result[0] != 'no'); + asyncCallback(result[0] != 'no' && result[0] != 'na'); }); },