diff options
Diffstat (limited to 'SparkleShare/Linux/sparkleshare.in')
-rwxr-xr-x | SparkleShare/Linux/sparkleshare.in | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/SparkleShare/Linux/sparkleshare.in b/SparkleShare/Linux/sparkleshare.in index 5af417c..b53564c 100755 --- a/SparkleShare/Linux/sparkleshare.in +++ b/SparkleShare/Linux/sparkleshare.in @@ -8,6 +8,10 @@ fi start() { if [ -n "${SSH_AGENT_PID}" -o -n "${SSH_AUTH_SOCK}" ] ; then mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" $2 & + pid=$! + uid=`id -u` + mkdir -p /var/run/user/$uid/sparkleshare/ + echo $pid > /var/run/user/$uid/sparkleshare/pidfile else ssh-agent mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" $2 & fi @@ -23,6 +27,15 @@ case $1 in curl --insecure --output ~/SparkleShare/.$invite.xml $open start ;; + stop|--stop) + uid=`id -u` + if [ -e /var/run/user/$uid/sparkleshare/pidfile ] ; then + pid=`cat /var/run/user/$uid/sparkleshare/pidfile` + (kill $pid 2>&1) >/dev/null + rm /var/run/user/$uid/sparkleshare/pidfile + fi + ;; + *) mono "@expanded_libdir@/@PACKAGE@/SparkleShare.exe" --help ;; |