Package: hibernate
Version: 1.91-2
Severity: normal

For reference, see http://bugs.debian.org/367428 "sysvinit: last cut the
username if its longer than eight characters"

Because of the above bug, FindXServer in /usr/sbin/hibernate fails on
usernames longer than eight characters (mine, espeoneefi, is 10). At
line 196, instead of xuser being set to espeoneefi, as intended, it is
set to espeonee, making all the rest of that for loop fail.

Further bugginess in FindXServer causes this failure not to be
rectified. Lines 216 and 217 suffer from the same mawk in `` bug that
manifested itself with LockXScreenSaver. (Maybe there should be a full
audit of the source tree to make sure there aren't more of these lurking
around?) Replacing the `` in these lines with $() seems to make things
better. (The same replacement could be done in line 218 if desired,
though it seems that this invocation of mawk is perfectly happy inside
``.)

(Note though, that by "make things better," I mean that XUSER gets set
to root and XAUTHORITY to /var/lib/gdm/:0.Xauth, since I log into my
GNOME session from GDM. I'm not sure whether this setting to root
instead of regular user espeoneefi breaks any assumptions elsewhere. I
simply know that it fixes the problem which led me to find this
bug--that the xstatus display using osd_cat was failing to work when I
invoked hibernate through ACPI events.)

One other interesting note... In the original (with the buggy mawk in
``), we reach line 227 with $xuser being empty. However, the test there
turns out to be buggy; [ -n  ] (which is what that test expands to with
an empty $xuser) actually has a return code of 0, not what is intended
at all. Instead, $xuser should be put in "" (i.e., [ -n "$xuser" ]) so
that the test will work as intended. (This might be another subtle shell
scripting bug that might be worth looking back over the source tree
for...)

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.16-2-686
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages hibernate depends on:
ii  console-tools              1:0.2.3dbs-62 Linux console and font utilities

Versions of packages hibernate recommends:
ii  hdparm                        6.6-1      tune hard disk parameters for high
pn  vlock                         <none>     (no description available)

-- no debconf information


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to