After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 615914 - Nautilus crashes on cyclic symlinks
Nautilus crashes on cyclic symlinks
Status: RESOLVED DUPLICATE of bug 607974
Product: nautilus
Classification: Core
Component: Views: All
2.30.x
Other Linux
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-04-16 01:31 UTC by Matt Giuca
Modified: 2010-04-16 18:10 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Matt Giuca 2010-04-16 01:31:48 UTC
Viewing a directory with a symlink cycle causes Nautilus to crash. As Linux raises an ELOOP error in this condition, I assume Nautilus is not opening the symlink using a standard 'open', but instead manually following symlinks, with no limit on the number of times it will follow them.

To reproduce:

$ mkdir looptest; cd looptest
$ touch foo
$ ln -s foo bar
$ rm foo
$ ln -s bar foo
$ ls -l
total 8
lrwxrwxrwx 1 matt matt 84 2010-04-16 11:07 bar -> foo
lrwxrwxrwx 1 matt matt 84 2010-04-16 11:07 foo -> bar
$ cat foo
cat: foo: Too many levels of symbolic links
$ nautilus .

This crashes Nautilus as it loads.

I examined the crash in GDB. The stack trace is about 178575 frames long and then it SIGSEGVs. The majority of the stack trace is a cycle between three functions (which I can't see because I don't have source on). This implies that it's simply following the symlinks manually forever until a stack overflow.
Comment 1 Cosimo Cecchi 2010-04-16 18:10:33 UTC
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find.

*** This bug has been marked as a duplicate of bug 607974 ***