CVS:oo-debian-files/bin openoffice,1.25,1.26
Update of /home/halls/cvs/debian-openoffice/oo-debian-files/bin
In directory gluck:/tmp/cvs-serv31628/bin
Modified Files:
openoffice
Log Message:
* If setup fails, report error code to stderr
* Detect .lock that indicates that OOo is already running,
and do not attempt to run setup if found (Closes: #241224)
* doc/README.Debian: Add advice about checking for lockd when using
NFS filesystems
* debian/control: Update dependencies to require openoffice >> 1.1.1
Index: openoffice
===================================================================
RCS file: /home/halls/cvs/debian-openoffice/oo-debian-files/bin/openoffice,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -d -r1.25 -r1.26
--- openoffice 16 Apr 2004 21:50:12 -0000 1.25
+++ openoffice 16 Apr 2004 21:51:37 -0000 1.26
@@ -143,6 +143,20 @@
return 1
}
+### get_lock_info <path-to-OOo-install>
+### return 0 if .lock file is not found
+### otherwise set LOCK_USER, LOCK_HOST and LOCK_FILE
+get_lock_info()
+{
+ LOCK_FILE="$1/.lock"
+ if [ -f "$LOCK_FILE" ]; then
+ LOCK_USER="$(sed -n '/^User=/ s///p' < "$LOCK_FILE")"
+ LOCK_USER="$(sed -n '/^Host=/ s///p' < "$LOCK_FILE")"
+ return 1
+ fi
+ return 0
+}
+
## OOo does not start if /proc is not mounted, so check for it
if [ ! -f /proc/version ]; then
echo "openoffice.org: You must have a working /proc filesystem to use openoffice." >&2
@@ -207,6 +221,14 @@
## install OO for this user if needed
##
if [ -z "$OOHOME" ] ; then
+ if ! get_lock_info "$OOHOME"; then
+ # We need to upgrade but OOo is already running
+ echo "Lockfile $LOCK_FILE found" >&2
+ echo "OpenOffice.org is already running as user $LOCK_USER on host $LOCK_HOST" >&2
+ echo "Please shut down all instances of soffice.bin and OOo quickstarter and try again">&2
+ exit 1
+ fi
+
if [ -e /etc/openoffice${VER}/autoresponse.conf ] && \
grep -q DESTINATIONPATH /etc/openoffice${VER}/autoresponse.conf ; then
echo "OpenOffice.org for Debian - see /usr/share/doc/openoffice.org${VER}/README.Debian.gz"
@@ -219,9 +241,9 @@
echo "upgrading openoffice.org user configuration..."
if ! /usr/lib/openoffice${VER}/program/setup -nogui -R:$TMPFILE ; then
- rm -f $TMPFILE
- echo "setup failed.. abort" >&2
+ echo "setup failed (code $?).. abort" >&2
echo "---- Please read /usr/share/doc/openoffice.org${VER}/README.Debian.gz for known problems -----" >&2
+ rm -f $TMPFILE
exit 1
fi
@@ -244,7 +266,7 @@
echo "running openoffice.org setup..."
if ! /usr/lib/openoffice${VER}/program/setup -nogui -R:/etc/openoffice${VER}/autoresponse.conf ; then
- echo "setup failed.. abort" >&2
+ echo "setup failed (code $?).. abort" >&2
echo "---- Please read /usr/share/doc/openoffice.org${VER}/README.Debian.gz for known problems -----" >&2
exit 1
fi
@@ -284,8 +306,14 @@
esac
fi
-## Change locale of OOo
-change_locale "$LOCALEOO"
+if ! get_lock_info "$OOHOME"; then
+ # OOo is already running
+ echo "OpenOffice.org lockfile found ($LOCK_FILE)"
+ echo "Using existing OpenOffice.org"
+else
+ ## Change locale of OOo
+ change_locale "$LOCALEOO"
+fi
##
## That's it. Launch the beast (with the given args)
Reply to:
- Prev by Date:
CVS:oo-debian-files/doc README.Debian,1.35,1.36
- Next by Date:
CVS:oo-debian-files/debian changelog,1.94,1.95 control,1.26,1.27
- Previous by thread:
CVS:oo-debian-files/doc README.Debian,1.35,1.36
- Next by thread:
CVS:oo-debian-files/debian changelog,1.94,1.95 control,1.26,1.27
- Index(es):