about summary refs log tree commit diff
path: root/pkgs/desktops/xfce/core/xfce4-light-locker.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops/xfce/core/xfce4-light-locker.patch')
-rw-r--r--pkgs/desktops/xfce/core/xfce4-light-locker.patch17
1 files changed, 13 insertions, 4 deletions
diff --git a/pkgs/desktops/xfce/core/xfce4-light-locker.patch b/pkgs/desktops/xfce/core/xfce4-light-locker.patch
index 4e1dcc1efa71..0fabdffd7ed6 100644
--- a/pkgs/desktops/xfce/core/xfce4-light-locker.patch
+++ b/pkgs/desktops/xfce/core/xfce4-light-locker.patch
@@ -1,16 +1,25 @@
 --- ./scripts/xflock4.orig	2017-08-06 23:05:53.807688995 +0100
 +++ ./scripts/xflock4	2017-08-06 23:09:06.171789989 +0100
-@@ -24,10 +24,11 @@
+@@ -24,12 +24,19 @
  PATH=/bin:/usr/bin
  export PATH
-
+ 
 -# Lock by xscreensaver or gnome-screensaver, if a respective daemon is running
-+# Lock by xscreensaver, gnome-screensaver or light-locker, if a respective daemon is running
++# First test for the command set in the session's xfconf channel
++LOCK_CMD=$(xfconf-query -c xfce4-session -p /general/LockCommand)
++
++# Lock by xscreensaver, gnome-screensaver, or light-locker, if a respective daemon is running
  for lock_cmd in \
++    "$LOCK_CMD" \
      "xscreensaver-command -lock" \
 -    "gnome-screensaver-command --lock"
 +    "gnome-screensaver-command --lock" \
 +    "light-locker-command -l"
  do
-     $lock_cmd >/dev/null 2>&1 && exit
+-    $lock_cmd >/dev/null 2>&1 && exit
++    if [ ! -z "$lock_cmd" ]; then
++        $lock_cmd >/dev/null 2>&1 && exit
++    fi
  done
+ 
+ # else run another access locking utility, if installed