apply_recursive_permissions: don't follow symlink
authorZac Medico <zmedico@gentoo.org>
Tue, 14 Dec 2010 03:47:27 +0000 (19:47 -0800)
committerZac Medico <zmedico@gentoo.org>
Tue, 14 Dec 2010 03:56:45 +0000 (19:56 -0800)
commit64247b288f3fb2e4cfb72e545ffc230e8a05dd74
tree93d5cee0eb3c8b41acc08aaa885d4d97ea5df1b6
parentb53e0000cbe1f4b5600d29224fb724b00e22088b
apply_recursive_permissions: don't follow symlink

This will fix the following error, reported in bug #339670:

_ebuild_exit
    _post_phase_userpriv_perms(settings)
  File "/usr/lib64/portage/pym/portage/package/ebuild/doebuild.py", line 1207,
in _post_phase_userpriv_perms
    filemode=0o60, filemask=0)
  File "/usr/lib64/portage/pym/portage/util/__init__.py", line 1018, in
apply_recursive_permissions
    uid=uid, gid=gid, mode=filemode, mask=filemask)
  File "/usr/lib64/portage/pym/portage/util/__init__.py", line 1043, in
apply_secpass_permissions
    stat_cached = os.stat(filename)
  File "/usr/lib64/portage/pym/portage/__init__.py", line 226, in __call__
    rval = self._func(*wrapped_args, **wrapped_kwargs)
OSError: [Errno 40] Too many levels of symbolic links:
'/var/tmp/portage/dev-vcs/mercurial-1.7.2/temp/tests-2.7/child0/test-mq-symlinks.t/linka'
pym/portage/util/__init__.py