summaryrefslogtreecommitdiff
diff options
-rw-r--r--lockscreen/LockScreenController.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lockscreen/LockScreenController.cpp b/lockscreen/LockScreenController.cpp
index 98bdd90a0..0caf8ba17 100644
--- a/lockscreen/LockScreenController.cpp
+++ b/lockscreen/LockScreenController.cpp
@@ -417,10 +417,11 @@ void Controller::OnScreenSaverActivationRequest(bool activate)
{
if (Settings::Instance().use_legacy())
{
+ // SetActive(FALSE) will unlock the screen. This used to cause security issues (see lp:1552537).
if (activate)
{
auto proxy = std::make_shared<glib::DBusProxy>("org.gnome.ScreenSaver", "/org/gnome/ScreenSaver", "org.gnome.ScreenSaver");
- proxy->CallBegin("SetActive", g_variant_new("(b)", activate != FALSE), [proxy] (GVariant*, glib::Error const&) {});
+ proxy->CallBegin("SetActive", g_variant_new("(b)", TRUE), [proxy] (GVariant*, glib::Error const&) {});
}
return;
}