possible bug found
Carey Tilden <carey <at> wd39.com>
2003-02-04 00:01:26 GMT
Hi. I've found what I think is a bug in lisp/sawfish/wm/gnome/menus.jl.
Before submitting it to bugzilla, I thought I'd run it by you folks,
like they ask on the website. :)
On startup, sawfish recurses through a list of directories looking for
gnome menu entries. This list is defined in menus.jl. One of the
directories it looks in is defined with the code:
(expand-file-name "apps" gnome-share-directory)
The bug is in the code that defines gnome-share-directory. It looks
through the current PATH for the gnome-session binary. When found, it
moves to ../share/gnome. So, for example, if gnome-session is found in
/usr/bin, gnome-share-directory is set to /usr/share/gnome. But if
gnome-session is not installed, gnome-share-directory is simply set to
an empty string.
This causes sawfish to look in the "apps" subdir of whatever directory
sawfish is started from. The problem comes in when a user (such as
myself) has an ~/apps directory that is rather large. Sawfish recurses
through this directory and reads a little bit of every file, searching
for gnome menu definitions. This takes a substantial amount of time, and
blocks sawfish from running until it's done.
This long startup behavior has annoyed me for a long time, and I finally
tracked it down. Installing gnome-session is an effective workaround,
but I'd rather not install things I don't need. The version of sawfish
I've been using is 1.0.1, but I downloaded the latest 1.2 code, and the
same bug is present.