Bug#379598: libgnomevfs2-0: uses 100% CPU, prevents login

Gabor Gombas gombasg at sztaki.hu
Mon Jul 24 19:05:45 UTC 2006


On Mon, Jul 24, 2006 at 05:26:59PM +0200, Loďc Minier wrote:

>  I suggest you strace gnome-session, e.g. "strace -e trace=file -f ...".
> 
>  It probably spins searching for some particular file(s).

Upon further investigation, I think I found the bug:

- With today's upgrade of libntfs-gnomevfs,
  /etc/gnome-vfs-2.0/modules/libntfs.conf became a directory (that's
  interesting in itself...)

- In gnome-vfs-configuration.c, the function parse_file() now gets into
  an endless loop when called with file_name being
  "/etc/gnome-vfs-2.0/modules/libntfs.conf":
  
  - read_line() always returns 0 with line_buffer being the empty
    string, since it cannot read the directory as a file
  - parse_line() returns TRUE when it is given an empty string
  - there are no other ways to break the "while (1) { ... }" loop...

The bug seems to be that parse_file() expects read_line() to return -1
on EOF, but read_line() never returns -1; on EOF, it returns 0 instead.

Maybe an explicit test before the g_fopen() that file_name is not a
directory/device node/etc. would be useful.

Gabor

-- 
     ---------------------------------------------------------
     MTA SZTAKI Computer and Automation Research Institute
                Hungarian Academy of Sciences,
     Laboratory of Parallel and Distributed Systems
     Address   : H-1132 Budapest Victor Hugo u. 18-22. Hungary
     Phone/Fax : +36 1 329-78-64 (secretary)
     W3        : http://www.lpds.sztaki.hu
     ---------------------------------------------------------





More information about the Pkg-gnome-maintainers mailing list