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

Bug#337650: /etc/X11/Xsession run_parts function not working correctly



Package: x11-common
Version: 6.8.2.dfsg.1-7

This is a little bug (or at least I think it's a bug :-)) I discovered when 
upgrading to the last version of kdm, today. I think it's triggered by the 
fact that now kdm reads also shell startup scripts for the user logging in 
(but I could be completely wrong about this...). In any case, this bug 
prevents users with modified shell startup scripts from logging in using kdm.
The script /etc/X11/Xsession contains a function named run_parts to get the 
list of files in the directory /etc/X11/Xsession.d to source. This function 
uses "ls" to get the name of files in that directory. This does not work if 
instead of plain "ls", "ls --color" is executed due to an alias (and this 
happends if the user logging in has modified its ~/.bashrc) because control 
characters are present in the name of files and expr fails. Perhaps, instead 
of getting file names with this function, "run-parts --list" could be used. I 
have substituted the line
	SESSIONFILES=$(run_parts $SYSSESSIONDIR)
with
	SESSIONFILES=$(run-parts --list $SYSSESSIONDIR)
and now it works.
I hope I've been of any help.

I'm using Debian Testing (etch), the output of uname -a is:
Linux eolo 2.6.14 #1 SMP Fri Oct 28 23:43:44 CEST 2005 i686 GNU/Linux



Reply to: