about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh')
-rw-r--r--nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh5
1 files changed, 3 insertions, 2 deletions
diff --git a/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh b/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh
index 806dd0806ad5..9ab3a907a985 100644
--- a/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh
+++ b/nixpkgs/pkgs/applications/office/libreoffice/wrapper.sh
@@ -2,7 +2,7 @@
 export JAVA_HOME="${JAVA_HOME:-@jdk@}"
 #export SAL_USE_VCLPLUGIN="${SAL_USE_VCLPLUGIN:-gen}"
 
-if uname | grep Linux > /dev/null && 
+if uname | grep Linux > /dev/null &&
        ! ( test -n "$DBUS_SESSION_BUS_ADDRESS" ); then
     dbus_tmp_dir="/run/user/$(id -u)/libreoffice-dbus"
     if ! test -d "$dbus_tmp_dir" && test -d "/run"; then
@@ -14,6 +14,7 @@ if uname | grep Linux > /dev/null &&
     fi
     dbus_socket_dir="$(mktemp -d -p "$dbus_tmp_dir")"
     "@dbus@"/bin/dbus-daemon --nopidfile --nofork --config-file "@dbus@"/share/dbus-1/session.conf --address "unix:path=$dbus_socket_dir/session"  &> /dev/null &
+    dbus_pid=$!
     export DBUS_SESSION_BUS_ADDRESS="unix:path=$dbus_socket_dir/session"
 fi
 
@@ -27,5 +28,5 @@ done
 "@libreoffice@/bin/$(basename "$0")" "$@"
 code="$?"
 
-test -n "$dbus_socket_dir" && rm -rf "$dbus_socket_dir"
+test -n "$dbus_socket_dir" && { rm -rf "$dbus_socket_dir"; kill $dbus_pid; }
 exit "$code"