[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

OpenOffice conflicting with GNOME Session Manager (only version 2?)



Hi there,
I am using the gnome2 packages from sid and experimental, as well as the
openoffice.org package (1.0.0-4), and was quite aware from the changelog
that the package was supposed to have a workaround for the conflict with
the GNOME session manager. But I am finding that openoffice often quits,
in exactly the same way as it used to do before the workaround was put
in place. I don't know if the same problem exists with GNOME 1.4 though.

Here is the problem.
Firstly, the PID of the session manager is found using
echo $SESSION_MANAGER | sed --quiet "s,local.*/,,p"
and the result put into $SMPID

Then the following expression is evaluated:
ps -p$SMPID -ocmd --no-heading
and if that contains the phrase "gnome-session" in the first word, it is
considered that a GNOME session manager is running. But on my system
(98% woody, 2% sid), that ps returns "x-session-manager". It seems that
ps on this system doesn't resolve symlinks from
/usr/bin/x-session-manager to /etc/alternatives/x-session-manager to
/usr/bin/gnome-session.

A workaround which seems to work for my system is to find where
/proc/$SMPID/exe is symlinked to, and search that for gnome-session.

If anybody has a better way for this, that would be good, the above was
just the easiest way I could think of to resolve possibly multiple
symbolic links to the final destination. And it needs testing by people
with other GNOME versions.

Comments?
Gary.
--- openoffice	Thu May 30 10:57:05 2002
+++ openoffice.new	Fri Jun 14 15:19:24 2002
@@ -24,7 +24,7 @@
 SMPID=`echo $SESSION_MANAGER | sed --quiet "s,local.*/,,p"`
 
 if [ -n "$SMPID" ]; then
-  if ps -p$SMPID -ocmd --no-heading | grep -q "^[^ ]*gnome-session"; then
+  if ls -l /proc/$SMPID/exe | grep -q " \-> [^ ]*gnome-session"; then
     echo "Gnome session manager detected - session management disabled"
     unset SESSION_MANAGER
   fi

Reply to: